情况如下: -
我想加入2桌.让我们说表a和b
SELECT *
FROM a
JOIN b ON a.id = b.id AND b.status = '1'
Run Code Online (Sandbox Code Playgroud)
这是问题所在:
b.status = '1'
Run Code Online (Sandbox Code Playgroud)
应该只在添加时添加
b.stage in (1, 3, 5, 6, 8)
Run Code Online (Sandbox Code Playgroud)
如何在ON条款中添加这样的条件?
喜欢
ON a.id = b.id
CASE
IF (b.stage in (1, 3, 5, 6, 8))
THEN
AND b.status = '1'
END
Run Code Online (Sandbox Code Playgroud)
您的条件在逻辑上与" 任一阶段不在列表中或状态为1"相同:
SELECT *
FROM a
JOIN b ON a.id = b.id
AND (b.stage not in (1, 3, 5, 6, 8) OR b.status = '1')
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
430 次 |
| 最近记录: |