我想使用從表中獲取數據的select查詢。MySQL/PHP:如果值不是0,則使用內部連接
它看起來像這樣
SELECT table1.value1, table1.value2, table1.id, table2.id, table2.value2
FROM table1
INNER JOIN table2
ON table2.id = table1.value4
ORDER BY table1.id DESC
LIMIT 10
雖然table1.value4
有時是0,沒有table2.id
值爲0,並因爲它是一個自動遞增值,它從1開始,我希望它開始在1.
因爲當它等於0那麼該特定的行不可用,只是其他的。
但我想一些如何設置一個where子句,它應該只得到table2
值如果table1.value4
不等於0
where table1.value4 <> 0 - 實際上如果所有的table2.id都不爲零,你的內連接將不會拾取任何零ta ble1.value4行,即使沒有where子句 – 2012-07-15 14:06:08
正如@dan_l所說 - 除非你的意思是你希望即使沒有相應的table2值也會出現table1值。在這種情況下,您應該考慮使用LEFT JOIN而不是INNER。 – shunty 2012-07-15 14:07:59
你試過一些測試數據嗎?我認爲dan_I是正確的。你的加入應該已經照顧到了 – codingbiz 2012-07-15 14:08:37