如何从SQL二进制字段获取单个字节

问题描述

SUBSTRING函数应该足够了。一个简单的示例,假设表MyTable的列SomeData,binary(10)不为null:

DECLARE
  @OneByte  binary(1)
 ,@Loop     int


SET @Loop = 0
WHILE @Loop < 10
 BEGIN
    SET @Loop = @Loop + 1

    SELECT @OneByte = substring(SomeData, @Loop, 1)
     from MyTable

    --  Process accordingly
 END

有很多基于集合的方法可以执行此操作,但是对于短值,这应该足够了。

解决方法

我在SQL Server中有一个二进制字段,我想一次在SQL函数中读取一个字节。在代码中,我将使用字节数组。在SQL中是否有等效项?

我找不到任何与谷歌。