0

我有一个这样的表,我需要编写一个 sql 查询来比较和验证记录的顺序是否正确。例如: dhoni 在 column2 中有 no1,就像每个玩家都有自己的 no's 一样,我需要编写一个代码来验证没有玩家为多个玩家分配相同的 no's。并且需要检查玩家是否分配了他的天气。

+-------+-------+
|column1|column2|
+-------+-------+
|dhoni  |no1    |
|sachin |no2    |
|dravid |no3    |
|dhoni  |no1    |
+-------+-------+

注意: 编写一个查询来验证表数据例如:检查 dhoni 应该始终必须在 column2 中获取 no1,无论重复记录和顺序如何,同样明智地还需要检查其他玩家,无论表中是否存在数据。 . 只需要验证这些东西..

4

2 回答 2

1

找到一个用户不止一个。

select column1 from table group by column1 having count(*) > 1;

找到一个以上用户的相同号码。

select column2 from table group by column2 having count(*) > 1;
于 2013-05-09T07:06:52.177 回答
0

请试试:

SELECT 
    column2, COUNT(*) TotalCount
FROM YourTable
GROUP BY column2
HAVING COUNT(*) > 1
ORDER BY COUNT(*) DESC

其中 TotalCount 返回多次分配的数字的计数。或者

select * From(    
  SELECT distinct Column1, Column2, COUNT(*) over (partition by Column2) TotalCount
  FROM YourTable
)x 
where TotalCount>1
于 2013-05-09T07:03:53.520 回答