2010-03-03 70 views
2

我還是新來實現在我的db_design連接,我不知道,如果在所有這些SQL是有效的。這個SQL有效嗎?

"SELECT * FROM notes JOIN small_note ON notes_id = '$id' AND authname = '$author' AND bookname = '$book' AND user = '$username'" 

有點更容易閱讀這樣的:

"SELECT * FROM notes 
    JOIN small_note ON notes_id = '$id' 
    AND authname = '$author' 
    AND bookname = '$book' 
    AND user = '$username'"; 
+0

你可以顯示你的這兩個表的數據庫結構? – antyrat 2010-03-03 15:10:45

回答

0

我認爲你需要用WHERE更換你的第一個AND

7

不,它不是。

您需要指定兩個表的連接列,並且您需要確保使用正確的WHERE子句(在查詢中缺少該子句)。

這可能更適合:

SELECT * FROM notes n 
JOIN small_note sn 
    ON n.notes_id = sn.notes_id 
WHERE notes_id = '$id' 
    AND authname = '$author' 
    AND bookname = '$book' 
    AND user = '$username' 
+0

另外,你不應該使用select *,特別是當你有一個連接,因爲它浪費資源。 – HLGEM 2010-03-03 15:25:06

0

不,你的$ id應該是保存在參照其他表的列名。這不是一個變量,這是一個列名