繁体   English   中英

SQL查询在多列中查找具有相同值的行

[英]SQL query to find rows with the same value in multiple columns

我想在我的表中查找同一行中各列具有重复值的行

例:

id   column_1    column_2    column_3
1    123            44           100
2    555            555          555
3    101            396          100
4    99             99           99
5    123            44           100

我需要一个返回第2&4行的查询。到目前为止,我仅发现标题相似的问题,即在多个列中查找具有相同值的行(例如返回1&5)。这不是我要查找的内容为:)

这是您的查询:

SELECT * FROM your_table WHERE column_1 = column_2 AND column_2 = column_3

减法可用于三列:

select *
  from mytable
 where ( column_1 - column_2  =  column_3 - column_2 )
   and column_1 = column_2
order by 1;

最小最大功能可以一起使用:

select *
  from mytable    
 where greatest(column_1,column_2,column_3) = least(column_1,column_2,column_3)
order by 1;

SQL小提琴演示

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM