Amazon redshift 如何获取所有值都是唯一id的行
我在下表中提到:Amazon redshift 如何获取所有值都是唯一id的行,amazon-redshift,Amazon Redshift,我在下表中提到: ID State City Pincode Code Date U-1 AAB CCV 141414 121 2018-04-04 18:08:17 U-1 AAB CCV 141414 121 2018-04-04 18:08:17 U-2 BTB ERV 150
ID State City Pincode Code Date
U-1 AAB CCV 141414 121 2018-04-04 18:08:17
U-1 AAB CCV 141414 121 2018-04-04 18:08:17
U-2 BTB ERV 150454 145 2018-05-05 19:11:25
U-2 BTB ERV 150454 145 2018-05-05 19:11:25
U-3 FFT ERT 160707 150 2018-05-22 21:37:45
U-4 FFT RTT 160707 150 2018-05-28 14:23:48
我只想获取那些在特定唯一ID中所有值都相同的行
输出:
ID State City Pincode Code Date
U-1 AAB CCV 141414 121 2018-04-04 18:08:17
U-1 AAB CCV 141414 121 2018-04-04 18:08:17
U-2 BTB ERV 150454 145 2018-05-05 19:11:25
U-2 BTB ERV 150454 145 2018-05-05 19:11:25
您可以尝试以下方法:
SELECT * FROM table WHERE ID IN (
SELECT count(*) AS c FROM table
WHERE c > 1
GROUP BY ID
)
获取具有此ID的记录计数大于2的所有行(至少有两行具有此ID)您可以尝试以下操作:
SELECT * FROM table WHERE ID IN (
SELECT count(*) AS c FROM table
WHERE c > 1
GROUP BY ID
)
获取具有此ID的记录计数大于2的所有行(至少两行具有此ID)获取重复行并将结果连接到原始表
select * from table a
join ( select id,state,city,pincode,code,date
from table
group by id,state,city,pincode,code,date
having count(*) > 1 ) b
on a.id = b.id
and a.state = b.state
and a.city = b.city
and a.pincode = b.pincode
and a.code = b.code
and a.date=b.date
获取重复的行并将结果连接到原始表
select * from table a
join ( select id,state,city,pincode,code,date
from table
group by id,state,city,pincode,code,date
having count(*) > 1 ) b
on a.id = b.id
and a.state = b.state
and a.city = b.city
and a.pincode = b.pincode
and a.code = b.code
and a.date=b.date
您的问题是针对MySQL还是Redshift?请在您的问题中只包含一个数据库标记。@JohnRotenstein这是红移。您的问题是针对MySQL还是红移?请在您的问题中只包含一个数据库标记。@JohnRotenstein这是红移。