不要
NOT IN与子查询一起使用。如果子查询中的任何值为,则语义错误
NULL。在这种情况下,
NOTINnever的取值为TRUE,因此根本不返回任何行。
而是使用
NOT EXISTS:
SELECt p.id, p.nameFROM players pWHERe p.this = 1 AND NOT EXISTS (SELECt 1 FROM players_online po WHERe po.name = p.name AND po.this = 'that' )ORDER BY RAND()LIMIT 3, 6;



