[英]SQL Query column based on condition
抱歉,如果以前有人問過這個問題。 我有一個表,它只是一個 ID 和標志:
ID | A | B | C | D
123 1 1 1 1
456 1 0 0 0
123 1 0 1 1
123 0 0 0 1
我正在嘗試實現最好的方法,如果在 A、B、C 中,如果任何 2 為 1(按 ID 分組),我可以將 D 顯示為 1。 即,如果 ID 中任何一個的列 D 為 1,則該 ID 的所有列都必須為 1。
我正在嘗試對同一張表進行左連接以實現此目的。
IE
CASE
WHEN A = 1 and B=1 and C=1 THEN 1
WHEN A = 1 and B=1 THEN 1
WHEN A = 1 and C=1 THEN 1
WHEN C = 1 and B=1 THEN 1
END AS D
只需添加列並檢查它們是否大於或等於 2
IF((A+B+C) >= 2, 1, 0) AS D
如果你想使用CASE
:
CASE
WHEN A+B+C >= 2 THEN 1
ELSE 0
END AS D
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.