結果我有一個MySQL查詢這樣查詢以提取使用空值或不等於
SELECT s.admission_number, s.student_name, c.class, m.month,
f.fee, fr23.amount_received
FROM students s
LEFT JOIN fee_receipts fr ON s.id = fr.admission_number
LEFT JOIN fee_receipts_23_repeat fr23 ON fr.id = fr23.parent_id
JOIN class c ON s.class = c.id
LEFT JOIN fee f ON f.id = fr23.fee
LEFT JOIN months m ON m.id = fr23.month
其示出了這樣的結果?
ad_num student_name class month fee amount_received
779 A Jain Nur January Tuition Fee 575.00
808 A Gupta Nur January Tuition Fee 0.00
821 A Mohanty Nur NULL NULL NULL
818 ATiwari Nur FebruaryTuition Fee 575.00
826 D Mishra Nur NULL NULL NULL
813 G Kaur Nur NULL NULL NULL NULL
809 P Palai Nur NULL NULL NULL
822 S Agrawal KG1 December Tuition Fee 575.00
773 S Garg KG1 NULL NULL NULL
現在我試圖讓學生通過課,誰沒有支付費用,通過排除那些已支付誰,但沒有得到正確的結果列表。我加入到上述查詢的條件是這樣的
where fr23.amount_received is NULL and c.class = 'Nur' and m.month != 'January'
我希望結果是它會列出所有的學生,誰沒有支付一月,但它給我一個空的結果集。
其實我試圖找到沒有付款條目的學生,這意味着列月份,費用和金額將被刪除。
我不是很確定我是否採取了正確的方法?
你能也許使用四個空格和反引號,表示你的問題的代碼和輸出,使之更具可讀性都有點? – Gijs 2013-02-26 18:45:57
當你說'列月,費用和amount_received將有空值.',你有沒有嘗試過'm.month是NULL,f.fee是NULL,fr23.amount_received是NULL'? – 2013-02-26 18:53:06