我有3個表的SQLite有多個匹配
PLAY
_id INTEGER
time INTEGER
SCORE
_id INTEGER
player_id INTEGER
play_id INTEGER
civilian INTEGER
scientific INTEGER
commercial INTEGER
military INTEGER
guilds INTEGER
treasury INTEGER
wonders INTEGER
progress INTEGER
total INTEGER
supremacy INTEGER
victory INTEGER
PLAYER
_id INTEGER
first_name INTEGER
last_name INTEGER
爲每PLAY SCORE的鏈接,並以每加盟SCORE one PLAYER已鏈接。
我想SELECT
每PLAY與第一和第二SCORE鏈接到每個PLAY的PLAYER的名字。我認爲這將是可能的使用JOIN
聲明,但由於我不是SQL專家,我不知道如何做到這一點。甚至可以用我的桌子?
編輯:
我想答案從胡安·卡洛斯·Oropeza具有一些修改的SELECT
聲明
SELECT p._id, p.time, p1.first_name, p2.first_name
FROM play p
JOIN score s1
ON p._id = s1.play_id
JOIN score s2
ON p._id = s2.play_id
AND s1.player_id <> s2.player_id
JOIN player p1
ON s1.player_id = p1._id
JOIN player p2
ON s2.player_id = p2._id
我得到這個結果,_id
列包含PLAY ID的
_id time first_name last_name
1 1504107269335 Jelmer Amarinske
1 1504107269335 Amarinske Jelmer
2 1504529628826 Jelmer Amarinske
2 1504529628826 Amarinske Jelmer
3 1504529644821 Jelmer Amarinske
3 1504529644821 Amarinske Jelmer
這是近乎完美。現在我想每場比賽只有一排。
編輯:
我加的建議由胡安·卡洛斯·Oropeza。現在我有了預期的結果。
1 1504107269335 Jelmer Amarinske
2 1504529628826 Jelmer Amarinske
3 1504529644821 Jelmer Amarinske
您能請張貼一些樣品數據和預期的結果。這對我們來說很有幫助。 –
我想你應該顯示一些相同的數據以及預期的輸出。 –