选择所有行在一行中的两列中具有相同值的记录

时间:2017-01-31 13:17:13

标签: mysql

这是我的示例表

awk '
{
    a[$1" "$2" "$3]+=$5
    b[$1" "$2" "$3]++
} END { for (i in a) { print i, (a[i] / b[i]) }} 
' file

我希望能够选择不同的记录,其中所有行在Col1和Col2中具有相同的值。所以我的回答应该是

Col1 Col2
A      A
B      B
A      C
B      D
C      C

2 个答案:

答案 0 :(得分:2)

简单地:

select distinct * from t where col1 = col2;

如果两个col都有null并且您想要获得该行:

select distinct * from t where coalesce(col1, col2) is null or col1 = col2;

答案 1 :(得分:0)

查询已写入您的请求中:

  

选择不同的记录,其中所有行在Col1和Col2中具有相同的值

SELECT DISTINCT *
FROM tbl
WHERE Col1 = Col2