是否有可以在查询、存储过程、函数中使用的 SQL 命令,该命令适用于类似于以下 C# 代码的二进制类型?
if (someBinaryArray[index] == 0) {
...
我想检查二进制中某个位置的索引是否是某个值,而不是拉下整个数组并进行比较?
是否有可以在查询、存储过程、函数中使用的 SQL 命令,该命令适用于类似于以下 C# 代码的二进制类型?
if (someBinaryArray[index] == 0) {
...
我想检查二进制中某个位置的索引是否是某个值,而不是拉下整个数组并进行比较?
根据它与二进制列一起使用的文档,您可以使用 Substring():
SELECT *
FROM Table
WHERE Substring(column, index, length) = 'blah'
如果你真的想检查一个空值(如你的例子)......你可以这样做:
SELECT *
FROM table
WHERE SUBSTRING(column, 3, 1) = CHAR(0)
如果你在 MSSQL Server 上工作,你可以使用READTEXT命令
CREATE TABLE #t (b varbinary(1))
DECLARE @ptrval varbinary(16)
SELECT @ptrval = TEXTPTR(mybinarraycolumn)
FROM mytable WHERE pk = @pk
INSERT INTO #t (b)
READTEXT pub_info.pr_info @ptrval @index 1
DECLARE @b varbinary(1)
SELECT @b = b FROM #t