如何从MySQL中的联接查询中删除重复的行 [英] How to remove duplicate rows from a join query in mysql
本文介绍了如何从MySQL中的联接查询中删除重复的行的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个表,其中包含列ID和名称
I have a table having columns id and name
我表中有3条记录
id name
1 Chinmoy
2 Amit
3 Bhagi
我想要结果
name1 name2
Amit Bhagi
Amit Chinmoy
Bhagi chinmoy
我尝试并成功完成了
name1 name2
Amit Bhagi
Amit Chinmoy
Bhagi Amit
Bhagi Chinmoy
Chinmoy Amit
Chinmoy Bhagi
通过使用此查询
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.
请帮助
预先感谢
推荐答案
基本上,您可以通过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
- SQLFiddle演示
- SQLFiddle Demo
输出
╔═══════╦═════════╗
║ NAME1 ║ NAME2 ║
╠═══════╬═════════╣
║ Amit ║ Bhagi ║
║ Amit ║ Chinmoy ║
║ Bhagi ║ Chinmoy ║
╚═══════╩═════════╝
这篇关于如何从MySQL中的联接查询中删除重复的行的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文