我正在 SQL Server 中编写查询,我有一个任务来过滤第一个表:
| c1 c2 c3 c4 |
|-------------------|
| 40 161 425 702 |
| 40 161 719 791 |
| 45 161 719 791 |
| 45 700 719 791 |
| 47 700 719 791 |
第二个表中的数据:
| c1 | c2 | c3 | c4 |
|----|------|------|------|
| 40 | NULL | NULL | NULL |
| 45 | 161 | NULL | NULL |
问题是,第二个表中的数据有“通配符”——如果列中有 NULL,则它可以是任何整数。长话短说,过滤表应该看起来像这样:
| c1 | c2 | c3 | c4 |
|----|-----|-----|-----|
| 45 | 700 | 719 | 791 |
| 47 | 700 | 719 | 791 |
我可能最终会找到用循环过滤它的方法,但它似乎根本没有优化。
我正在用 MSSQL 编写脚本,我有一个任务来过滤第一个表:
c1 c2 c3 c4 40 161 425 702 40 161 719 791 45 161 719 791 45 700 719 791 47 700 719 791
第二个表中的数据:
c1 c2 c3 c4 40 空 空 空 45 161 空 空
问题是,第二个表中的数据有“通配符”——如果列中有 NULL,则它可以是任何整数。长话短说,过滤表应该看起来像这样: