我從LOG_TABLE user_id
changes
選擇,但選擇時,選擇我想user_id
在USER_NAME表對應username
其中LOG_TABLE和USER_TABLE匹配的ID的。
Q
從2個表
-4
A
回答
3
我會在這裏提供了一個額外的答案,因爲你是剛剛起步。這個INNER JOIN代碼將從LOG_TABLE中選擇USER_TABLE中匹配的每一行。
SELECT l.id, l.changes, u.username
FROM LOG_TABLE l
INNER JOIN USER_TABLE u ON u.id = l.user_id
如果你想從LOG_TABLE進行選擇,但真的不關心,如果它在USER_TABLE匹配與否,你可以做一個LEFT JOIN代替:
SELECT l.id, l.changes, u.username
FROM LOG_TABLE l
LEFT JOIN USER_TABLE u ON u.id = l.user_id
當編寫一個JOIN ,明確說明您的JOIN關鍵字和條件總是一個好主意。如果使用隱式JOIN(在FROM子句之後列出的表格,用逗號分隔),如果意外省略了WHERE子句,則可能會產生生成笛卡爾積的風險。
案例的點,這裏就是OP已經使用的問題逗號分隔的JOIN符號,並在不經意間創造了一個笛卡爾積:MySQL Query - Join Issues
+0
感謝,只是我需要什麼 – kajab 2013-03-16 22:30:40
2
你想要的是一個JOIN。看看http://dev.mysql.com/doc/refman/5.0/en/join.html對於這個具體的例子,這樣的事情是你想要什麼:
SELECT l.changes, u.username
FROM LOG_TABLE l, USER_TABLE u
WHERE u.id=l.user_id
1
SELECT l.changes, u.username
FROM LOG_TABLE l
JOIN USER_TABLE u on u.id=l.user_id
相關問題
- 1. 從2個表
- 2. 從2個表
- 3. 從2個表
- 4. 從2個表
- 5. 從2個表
- 6. 從2個表
- 7. 從2個表
- 8. 從2個表
- 9. 從2個表
- 10. MySQL的2從2個表
- 11. SQL - 從2個表
- 12. 從2個鏈表
- 13. MYSQL - 從2個表
- 14. 從2個MySQL表
- 15. 從2個表插入1個表
- 16. mysql的2臺,獲得從2個表
- 17. 需要從2個表
- 18. 只顯示從2個表
- 19. 如何從2個表
- 20. UPDATE/INSERT從2個表
- 21. 需要從2個表
- 22. UNION ALL和從2個表
- 23. 製作從2個表
- 24. 比較從2個表
- 25. 比較從2個表
- 26. 噸sql中從2個表
- 27. 爲了從2個表
- 28. MYSQL |從兩個表2
- 29. PDO選擇從2個表
- 30. 如何從多2個表
發表您的查詢...... – 2013-03-16 16:19:40