Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/78.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/clojure/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 查询二进制位字段_Sql_Binary_Bit Manipulation - Fatal编程技术网

Sql 查询二进制位字段

Sql 查询二进制位字段,sql,binary,bit-manipulation,Sql,Binary,Bit Manipulation,我正在存储在SQL server数据库中执行的源文件中的哪些行。在我的查询中,我想确定两个文件的执行是否重叠;e、 g Line Run1 Run2 1 x 2 x x 3 4 x 这将比较(选择的)运行与其他运行位字段。理想情况下,我希望对记录组(一个组件的行覆盖率数据)的位字段进行排序,然后对另一组记录进行排序,而不是排序。我可以计算结果中的1位,这将是一组测试中包含的行数,而不是另一组测试中包含的行数 如果行数不是太多,您可以简单地将varbinary强制

我正在存储在SQL server数据库中执行的源文件中的哪些行。在我的查询中,我想确定两个文件的执行是否重叠;e、 g

Line Run1 Run2 1 x 2 x x 3 4 x
这将比较(选择的)运行与其他运行位字段。理想情况下,我希望对记录组(一个组件的行覆盖率数据)的位字段进行排序,然后对另一组记录进行排序,而不是排序。我可以计算结果中的1位,这将是一组测试中包含的行数,而不是另一组测试中包含的行数

如果行数不是太多,您可以简单地将varbinary强制转换为bigint以进行逐位比较 要获取执行第1行的所有文件,请执行以下操作:

where (cast(runCoverage as bigint) & 1) > 0
或执行第1行旁边任何一行的所有文件

where (cast(runCoverage as bigint) & ~1) > 0

如果行数较高,则可以使用substr生成一些辅助函数以获得适当的位。再说一遍,也许我完全误解了这个问题

很高兴看到一个不怕位屏蔽的sql开发人员。我的位字段表示文件,可以是数千行。
where (cast(runCoverage as bigint) & ~1) > 0