我有3個表,看起來像這樣執行從多個表中選擇:如何通過幾個IDS
game_table
+---------+------------+------------+----------------------+----------+
| game_id | game_title | sponser_id | game expiration date | prize_id |
+---------+------------+------------+----------------------+----------+
prize_table
+----------+---------------------------+------------+-------------+--------------------+--------------------------------------------+
| prize_id | prize_image_name | prize_cost | prize_title | remaining_quantity | prize_description |
+----------+---------------------------+------------+-------------+--------------------+--------------------------------------------+
sponser_table
+------------+--------------+
| sponser_id | sponser_name |
+------------+--------------+
如何建立查詢選擇從3個表中的所有數據 肉去的東西的聲明像僞代碼:
select all data from game_table and prize_table and sponser_table where game_table.sponser_id = 2 and game_table.prize_id = 2
我想是這樣的:
SELECT game_list.*, prize_list.* ,sponser_list.* FROM game_list, prize_list,sponser_list
WHERE game_list.sponser_id=2 And game_list.prize_id = 2 And game_list.game_id=2 ;
,但它沒有給我帶來好的結果。
爲什麼要使用一個左外連接? – Romain
問題中的信息不足以確定遊戲是否必須同時擁有贊助商和獎品。如果沒有獎品或贊助商,內部加入可能會隱藏遊戲行,這可能會讓開發人員對RDBMS感到困惑。這就是爲什麼我建議使用外連接。 – dasblinkenlight
我會假設所有三個表中都有數據,並且出於性能方面的原因使用內部聯接,然後可能會添加一條評論,說如果某些表不能有相關數據,應該使用外部聯接。由於OP在每個表格上都提到了一個過濾器,所以我會假設所有的數據都會有數據。 – Romain