首页 > 解决方案 > SQL(PLSQL),如何选择不同但计数> 1

问题描述

我有一个INVOICE带有ID_STUFF, STUFF_NAME, E_MAIL列的表。我需要找到具有相同 ID_STUFF 但不同 STUFF_NAME 或 E_MAIL 的行。

select distinct g.id_stuff, g.staff_name, g.e_mail from invoice g

显示了这一点: 在此处输入图像描述

但我不需要具有相同值的行相同ID_STUFF

标签: sqldatabaseoracleplsql

解决方案


用于exists查找相似记录:

 select  g.id_stuff, g.staff_name, g.e_mail from invoice g
 where exists 
 (select 1 from invoice g1 where g1.id_stuff =g.id_stuff
  and ( g1.staff_name <> g.staff_name or g1.e_mail <> g.e_mail)

推荐阅读