任何人都可以幫助,MySQL超越我我想!MySQL加入奇怪的結果
我有以下表格:
- 比賽
- 隊
- 競爭
比賽擁有兩個團隊和相應的之間的競爭遊戲的細節。
我想查詢所有遊戲數據庫/對於給定的比賽賽程,我想回:
- 球隊的名字
- 團隊ID
- 隊的比賽中
這是我的查詢:
SELECT
matches.match_id,
teamsh.team_name AS "homeTeam",
teamsa.team_name AS "awayTeam",
competition.competition_id,
competition.name
FROM
matches, teams teamsh, teams teamsa, competition
WHERE
matches.home_team_id = teamsh.team_id
AND matches.away_team_id = teamsa.team_id
AND matches.competition_id=2
由於某種原因,這個查詢返回所有正確的比賽2,但它也返回夾具的行,但作爲競爭1也。我不明白爲什麼,因爲我有條款:
AND matches.competition_id=2
什麼我做錯了,我檢查了數據庫和比賽是爲每個燈具正確保存。
謝謝。
+1給予正確的聯接語法。 –
Thnaks工作完美。笛卡爾加入是一個術語,自從我回到大學後的10年來我一直沒有聽說過,我需要回去閱讀這些東西。 –