我在使用COALESCE和JOIN時遇到了麻煩。我的計劃是:如何在同一時間使用COALESCE和JOIN並在MySQL中包含NULL值?
- 到創業列從我目前的表對陣從風險清單表VID列,並返回相應的企業名稱。
- 如果在當前表企業列爲零(0)或空,另一列旁邊將選擇(「venture_other」列)
雖然我的查詢返回其適當的值,在這種情況下,它看起來像NULL值被忽略。
venture_list表:
-------------------
| vid | name |
-------------------
| 1 | Malaysia |
-------------------
| 2 | Singapore |
-------------------
request_forms:
---------------------------------------------
| fid | username | venture | venture_other |
---------------------------------------------
| 1 | jake.long | 2 | |
---------------------------------------------
| 2 | xander.f | 0 | Japan |
---------------------------------------------
預期結果
---------------
| venturename |
---------------
| Singapore |
---------------
| Japan |
---------------
實際結果
---------------
| venturename |
---------------
| Singapore |
---------------
這裏是我的查詢:
SELECT COALESCE(NULLIF(ventures.name, null), venture_other) AS venturename
FROM request_forms forms
JOIN venture_list ventures ON ventures.vid = forms.venture
我試圖重新安排的列名,但沒有奏效。
謝謝你的鏈接@Pang!我承認我英語不太好(可能只是一點「好」,哈哈哈)。 –