sql - 如果过滤后值不匹配,则返回 null
问题描述
如果在使用 where 子句后与 join 子句不匹配,有谁知道如何返回 null 行?
我有两张桌子,我们称它们为 A 和 B。
例子:
TABLE A TABLE B
COL1 COL2 COL1 COL2 COL3 COL 4
A 1 A 1 sd 01/02
B 2 B 2 aa 01/05
C 3 C 3 bb 01/07
我使用以下查询:
SELECT *
FROM TABLE A as a
LEFT JOIN TABLE B as b ON a.COL1 = b.COL1 AND a.COL2 = b.COL2
我得到的结果是
COL1 COL2 COL1.2 COL2.2 COL3 COL4
A 1 A 1 sd 01/02
B 2 B 2 aa 01/05
C 3 C 3 bb 01/07
现在当我添加这个 where 子句时:
SELECT *
FROM TABLE A as a
LEFT JOIN TABLE B as b ON a.COL1 = b.COL1 AND a.COL2 = b.COL2
WHERE COL4 >= '01/05'
我明白了:
COL1 COL2 COL1.2 COL2.2 COL3 COL4
B 2 B 2 aa 01/05
C 3 C 3 bb 01/07
我的问题是我怎样才能让查询显示这个:
COL1 COL2 COL1.2 COL2.2 COL3 COL4
A NULL NULL NULL NULL NULL
B 2 B 2 aa 01/05
C 3 C 3 bb 01/07
任何帮助或想法将不胜感激。
谢谢
解决方案
有点奇怪的要求?我可以问一下,当您的 where 子句明确声明要排除 NULL 值时,为什么要将行返回为 NULL?如果您可以提供更多详细信息,我可以帮助您找到更好的方法。
推荐阅读
- mysql - 如何根据列中的逗号分隔值进行选择
- eclipse - 在 pydev 中创建模板
- android - 三星互联网浏览器音频未播放
- javascript - 广告请求成功,但由于广告资源不足,未返回任何广告。处理AdFailedToLoad
- javascript - (ReactJS + Redux)将/new添加到url时表单不加载
- sed - sed/find/grep 如果不存在,则将 c# 注释附加到文件顶部,如果存在则替换
- ios - Swift iOS - 按属性比较 1 个数组中的元素
- css - 块引用列表中的样式链接
- angular - 如何访问角度 httpClient 状态属性作为响应
- html - 悬停时无序列表中的 HTML 链接不改变颜色