[英]how to join two tables
我有兩個表,分別是EventTable和VenueTable
我將彼此的prinamrykey用作外鍵。 表結構如下;
EventID|VenueID|EventName
1 | 1 | Event1
2 | 1 | Event2
3 | 2 | Event3
VenueId|EnevtID|VenueNAme
1 | 1 | Venue1
2 | 2 | Venue2
我想要的結果如下;
VenueID | VenueName | EventID | EventName
1 | Venue1 | 1 | Event1
1 | Venue1 | 2 | Event2
2 | Venue2 | 2 | Event2
2 | Venue2 | 3 | Event3
我已使用內部聯接執行此操作。但是無法獲得預期的結果。
這個怎么做 ?
謝謝..
嘗試這個:
SELECT
v.VenueID,
v.VenueName,
v.EventID,
e.EventName
FROM
VenueTable v
INNER JOIN
EventTable e
ON (v.EventId = e.EventId)
UNION
SELECT
v.VenueID,
v.VenueName,
v.EventID,
e.EventName
FROM
VenueTable v
INNER JOIN
EventTable e
ON (v.VenueID = e.VenueID)
這模擬了MySQL中的FULL OUTER JOIN
這應該可以解決問題:
select VenueID, VenueName, EventID, EventName
from EventTable, VenueTable
where EventTable.VenueID = VenueTable.VenueID
記住mysql的分隔符
SELECT v.VenueID, v.VenueName, v.EventID, e.EventName
FROM VenueTable v
INNER JOIN EventTable e ON (v.EventId = e.EventId)
甚至
SELECT v.VenueID, v.VenueName, v.EventID, e.EventName
FROM VenueTable v, EventTable e
WHERE v.EventId = e.EventId
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.