0
兩個表...如何正確連接兩個表使用替代ORDER BY
people (personid, name, mainordering)
entries (userid, personid, altordering)
「PERSONID」 是常見的領域。我的應用程序顯示用戶可以移動的可拖動列表。完成後,他們點擊「鎖定」他們的順序。
表:人
+----------+---------+--------------+
| personid | name | mainordering |
+----------+---------+--------------+
| 1 | Bob | 2 |
| 2 | Charlie | 4 |
| 3 | Jim | 1 |
| 4 | Doug | 3 |
+----------+---------+--------------+
因此,使用mainordering,它會顯示:
Jim
Bob
Doug
Charlie
條目表可能有(用戶16):
+--------+----------+-------------+
| userid | personid | altordering |
+--------+----------+-------------+
| 16 | 1 | 3 |
| 16 | 2 | 1 |
| 16 | 3 | 2 |
| 16 | 4 | 4 |
+--------+----------+-------------+
所以,如果用戶16已經提交了他的條目但不鎖定它,我想使用altordering
顯示他的列表。即
Charlie
Jim
Bob
Doug
我正在努力使用正確的連接。以下是我試過和不工作(它只是通過mainordering
仍然排序)...
$sql = "SELECT * from entries
WHERE userid=".$_SESSION['userid']."
LEFT JOIN people ON entries.personid = people.personid
ORDER BY altordering";
任何想法,將不勝感激。謝謝你...
謝謝。在你指出它之後,我確實發現了一個問題,並且在糾正之後,它確實給我一個錯誤,正如你所說的那樣(在JOIN之前使用WHERE)。無論如何,你的代碼完美工作,非常感謝你的幫助/知識。 – user3304303