我想从表中收集数据
表1是用户挑选的风味。
表1
| T1C1 | T1C2 |
-------------------
| A | Vanilla |
表2是一段口味。
表2
| T2C1 | T2C2 |
-------------------
| 1 |Strawberry|
| 2 |Chocolate |
| 3 | Mint |
| 4 |Strawberry|
| 5 |Chocolate |
| 6 | Vanilla |
| 7 |Chocolate |
| 8 | Mint |
| 9 |Chocolate |
我想在选择了所选风味后获得以下结果,然后为其指定了“ 1 ”,否则标记为“ 0 ”。< / p>
结果
| T2C1 | T2C2 | SELECTED|
----------------------------|
| 1 |Strawberry| 0 |
| 2 |Chocolate | 0 |
| 3 | Mint | 0 |
| 4 |Strawberry| 0 |
| 5 |Chocolate | 0 |
| 6 | Vanilla | 1 |
| 7 |Chocolate | 0 |
| 8 | Mint | 0 |
| 9 |Chocolate | 0 |
答案 0 :(得分:2)
您可以使用LEFT JOIN
完成此操作,并在右侧表格中检查空值(不匹配):
SELECT
T2C1,
T2C2,
CASE WHEN T1.T1C2 IS NULL THEN 0 ELSE 1 END SELECTED
FROM Table1 T1
LEFT JOIN Table2 T2
ON T2.T2C2 = T1.T1C2
答案 1 :(得分:0)
我找到了结果。
如果有其他人感兴趣的话,那就是:
SELECT T2C1, T2C2,
CASE WHEN T2C2 = (SELECT T1C2 FROM T1 WHERE (T1C1 = 'A') THEN '1' ELSE '0' END AS SELECTED
FROM T2