我想基於某些選擇條件爲真來顯示來自表1的所有結果,並且基於某些滿意,對於來自表1的每個結果將變量設置爲0或1條件與表2。MySQL選擇IF語句來設置另一個表的變量
SELECT * FROM Table1 WHERE Some_Condition=true
Foreach Table1.Name
SELECT IF(TID IS NULL, 0, 1) AS Variable FROM Table2
WHERE
Table2.Name=Table1.Name AND Table2.Val='p'
如何使這一切成爲一個SQL調用?
例如呼叫我想看到的是:
表1:
+----+-------------------+
| ID | Name |
+----+-------------------+
| 1 | John |
+----+-------------------+
| 2 | Alan |
+----+-------------------+
表2:所以在這裏Alan
存在和Val='p'
,而不僅僅是現有
+-------+-----------+-----+
| TID | Name | Val |
+-------+-----------+-----+
| 1 | Alan | p |
+-------+-----------+-----+
SQL結果,我想從SINGLE SELECT語句:
+------+----------+
| Name | Variable |
+------+----------+
| John | 0 |
+------+----------+
| Alan | 1 |
+------+----------+
我會嘗試這一點,並讓你知道結果。我認爲這就是我正在尋找的。 A表中的實際查詢有點複雜,但我會嘗試將此解決方案合併到它中。 – Bob2u
謝謝,這做了我想要的!我之前沒有使用CASE,謝謝你教我新東西;) – Bob2u
不客氣!如果您有任何問題,請隨時與我聯繫。 – josemr