2015-10-15 73 views
1

下面是SQL包括三个表,反式sys_orgsys_pay。选择通过后中旬(但不是唯一的)SQL仍然有重复行添加DISTINCT

我试过

SELECT DISTINCT trans.mid,trans.A,sys_org.B,sys_org.C,sys_pay.D 
    FROM sys_org 
    LEFT JOIN trans ON sys_org.mid = trans.mid 
    LEFT JOIN sys_pay ON sys_org.mid = sys_pay.mid 

它会返回重复的行,如何解决它?

回报这样的:

trans.mid trans.A sys_org.B sys_org.C sys_pay.D 
1111  aaa  bbb  ccc  ddd 
1111  aaa  bbb  ccc  ddd 
+0

你对“重复”行的概念是什么?你能向我们展示一些样本输出吗? –

+0

看起来像这样。 – Windsooon

+0

你能提供一个真实的例子,有适当的CREATE和INSERT语句 – Strawberry

回答

-2

我相信,你的所有的行会是不同的,但这里明显是指整排不属于任何特定的列。

如果不是那么创建一个sqlfiddle,以便我可以检查它。

此外,如果你想基于特定字段获取唯一值,那么你应该使用group by。

+0

这里有什么错-ve投票... –

+0

我编辑我的问题,返回这样的记录。 – Windsooon

+0

任何字段的数据中都有空格或垃圾字符。如果你在这里创建sqlfiddle,那么我们可以检查它。链接在这里:http://sqlfiddle.com/ –