mysql 连接查询去除重复,如何从mysql中的连接查询中删除重复的行

I have a table having columns id and name

in my table 3 records present

id name

1 Chinmoy

2 Amit

3 Bhagi

I want result

name1 name2

Amit Bhagi

Amit Chinmoy

Bhagi chinmoy

I tried and succeeded up to this

name1 name2

Amit Bhagi

Amit Chinmoy

Bhagi Amit

Bhagi Chinmoy

Chinmoy Amit

Chinmoy Bhagi

by using this query

select tbl1.name,tbl2.name from test tbl1

join test tbl1 on tbl1.name != tbl2.name

order by tbl1.name,tbl2.name;

Now i didn't get how to do.

I have to eliminate the record which are already present in opposite order.

Please Help

Thanks in advance

解决方案

Basically, you can filter the result from the product of the two tables via a.Name < b.Name

SELECT a.Name Name1, b.Name Name2

FROM TableName a, TableName b

WHERE a.Name < b.Name

ORDER BY Name1, Name2

OUTPUT

╔═══════╦═════════╗

║ NAME1 ║ NAME2 ║

╠═══════╬═════════╣

║ Amit ║ Bhagi ║

║ Amit ║ Chinmoy ║

║ Bhagi ║ Chinmoy ║

╚═══════╩═════════╝

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值