1
我有一个查询:该查询是可靠的吗? (多JOIN在SQL)
SELECT matches.id,
matches.player1,
matches.player2,
users.firstname as firstname,
tournaments.tid as tid,
users.tempsalt as salt
FROM matches
INNER JOIN tournaments
ON matches.tid = tournaments.tid
INNER JOIN users
ON matches.uid = users.uid
WHERE ((matches.status = 0)
OR (matches.status = 1))
AND (tournaments.status <> 3)
AND (users.tempsalt = '324234324234')
三个表 - 比赛,比赛,用户
- 比赛(ID,TID,UID, player1,player2,status)
- users(id,uid,firstname, tempsalt)
- 比赛(ID,TID,状态)
加了: 火柴[1,3,2,约翰,马克,0] [2,3,NULL,Piter酒店,萨拉,1]
用户[1,3,亚历克斯,346] [2,4,山姆,32423]
比赛[1,3,2] 我想获得的结果: [1 ,约翰,马克,山姆,3,32423]和NULL t oo [2,Piter,Sara,NULL,3,NULL]
如果matches.uid为NULL,则不会有结果。但是我想在match.uid也是NULL时得到结果。在一个SQL查询中可以吗?
编辑你的问题,并提供样本数据和预期的结果。 –
好的,等一下。 – Puristaako
使用'left join'而不是'inner join' –