0
我曾與這個沒有問題,直到新的一年,所以我認爲這是一個問題YEARWEEK,但我想我已經證實,事實並非如此。MySQL的左連接 - 除非所有列空的結果包括
我原來的聲明,不再工作(返回0結果):
SELECT t1.*, t2.family
FROM report_tables.roc_test_results as t1
LEFT JOIN report_tables.roc_capacity_standards as t2
ON t1.item=t2.part_number
WHERE YEARWEEK(t1.date_created)='201301'
AND t1.operation='TEST'
AND t1.result='Passed'
,但奇怪的是,這一工作完全正常(返回22個結果):
SELECT t1.*, t2.*
FROM report_tables.roc_test_results as t1
LEFT JOIN report_tables.roc_capacity_standards as t2
ON t1.item=t2.part_number
WHERE YEARWEEK(t1.date_created)='201301'
AND t1.operation='TEST'
AND t1.result='Passed'
有誰知道爲什麼這不再起作用?唯一的區別是,我包含t2的所有列在第二個查詢
嘗試改變列的順序選擇列表像t2.family,T1。* – vidyadhar
@vidyadhar我想你的建議,但不幸的是,這並沒有幫助,但感謝! – Geoff
你可以在sqlfiddle中重現嗎? –