我有这个数据库表:
我想查询所有具有相同编号的“无列”。 所以最终的结果应该是:
ID No Name
1 53 Will
2 346 James
3 53 Someone
4 346 Elli
没有 5 32 Mat
因为“32”与其他任何内容都不匹配。
这是我到目前为止的查询,但它并没有像我想要的那样工作:
SELECT * FROM
test
WHERENo
=No
;
最佳答案
试试这个(更简单更快):
SELECT T1.* FROM test T1,test T2
WHERE T1.ID<>T2.ID
AND T1.No=T2.No
ORDER BY T1.ID
结果:
ID NO NAME
1 53 Will
2 346 James
3 53 Someone
4 346 Elli
查看结果 SQL Fiddle .
编辑: 要查看最后的条目,请使用以下查询:
SELECT T1.* FROM test T1,test T2
WHERE T1.ID<>T2.ID
AND T1.No=T2.No
GROUP BY T1.No
ORDER BY T1.ID
结果:
ID NO NAME
3 53 Someone
4 346 Elli
查看结果 SQL Fiddle .
关于mySQL查询同一列属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22941364/