SELECT g.guidUser,u1.username,g.sent,g.accepted,g.declined,g.rewarded,g.guidUserVersus,u2.username AS usernameUserVersus
FROM games g
INNER JOIN userdata u1 ON g.guidUser=u1.guidUser
INNER JOIN userdata u2 ON g.guidUserVersus=u2.guidUser
WHERE
((g.sent!="" OR g.accepted!="" OR g.declined!="")
AND g.rewarded="" AND (g.guidUser='1' OR g.guidUserVersus='1'))
ORDER BY g.guidUser, g.idGame
现在我想排除同时具有
我试过了
SELECT g.guidUser,u1.username,g.sent,g.accepted,g.declined,g.rewarded,g.guidUserVersus,u2.username AS usernameUserVersus,g.idGameVersus,g.timeFinal
FROM games g
INNER JOIN userdata u1 ON g.guidUser=u1.guidUser
INNER JOIN userdata u2 ON g.guidUserVersus=u2.guidUser
WHERE
((g.sent!="" OR g.accepted!="" OR g.declined!="")
AND g.rewarded="" AND (g.guidUser='1' OR g.guidUserVersus='1'))
** AND !(g.accepted!="" AND g.guidUserVersus='1') **
ORDER BY g.guidUser, g.idGame
但它似乎并没有选择它应该选择的记录,就像让g接受一样=“”和g.guidUserVersus='2'
这是小提琴
http://sqlfiddle.com/#!9/737e61/1