[SQL ] 如果是0筆資料,想強制輸出至少一筆 NULL

看板Database作者 (軒摩斯)時間10年前 (2015/10/09 21:21), 編輯推噓2(204)
留言6則, 2人參與, 最新討論串1/1
資料庫名稱: >> PostgreSQL 資料庫版本: >> V9.0.0 內容/問題描述: >> 如果 SELECT 是 0 筆資料,想要強制輸出至少 1 筆 NULL or something 各位大大們好,下面是小弟的一個資料表格: SELECT * FROM card_group_set; id | cardid | ctrlno | group_no ----+--------+--------+---------- 1 | 2 | 86 | 16 2 | 2 | 20 | 16 3 | 2 | 51 | 16 4 | 3 | 20 | 16 5 | 3 | 86 | 16 6 | 3 | 51 | 16 ----+--------+--------+---------- (6 rows) 現在想要針對 group_no 欄位進行取值,已知 group_no 有效值為 1 ~ 64, 若指定的條件正確,正常可輸出已存有的 group_no 資料: SELECT group_no FROM card_appset WHERE cardid = 3 AND ctrlno = 86; group_no ---------- 16 ---------- (1 row) 而若指定了某個不存在的條件值,回應將是 0 筆,如下: SELECT group_no FROM card_group_set WHERE cardid = 7 AND ctrlno = 71; group_no ---------- ---------- (0 rows) 想請問的是,什麼樣的 SQL 語法,可以使得產生這樣的輸出: 前提條件是,必須能輸出 1 筆資料就好,但不可以是 0 筆,否程式將無法接手。 group_no ---------- (NULL or ' ' or ... ) <-- 任何足以辨認 group_no 為無效的資料 ---------- (1 row) <-- 能輸出至少一筆,方便程式接手繼續處理。 拜託各位熱情解答了,小弟在此感謝!! -- 邊提供協助,邊鍛鍊自己... -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 123.240.207.14 ※ 文章網址: https://www.ptt.cc/bbs/Database/M.1444396910.A.73B.html

10/10 00:46, , 1F
10/10 00:46, 1F

10/10 22:45, , 2F
感恩!沒錯~就是這樣!弱弱的說一下,可以解釋一下
10/10 22:45, 2F

10/10 22:46, , 3F
語法作用嗎?
10/10 22:46, 3F

10/10 23:27, , 4F
有哪個字看不懂的嗎? left join ? select 3,86 ?
10/10 23:27, 4F

10/11 01:11, , 5F
我想為什麼不是 natural join?加入 left 的差異是?
10/11 01:11, 5F

10/11 01:23, , 6F
喔喔!找到答案了:https://goo.gl/RPq4aq 再次感謝
10/11 01:23, 6F
文章代碼(AID): #1M5xzkSx (Database)