我在MySQL中查询了从表A中获取数千条记录。 表A没有任何重复行。DISTINCT别名将做什么*在mysql select子句中做什么
我想知道这将是继哪一列它将应用于不同的不同的查询
select distinct alias.* from table A alias;
的行为? 谢谢
我在MySQL中查询了从表A中获取数千条记录。 表A没有任何重复行。DISTINCT别名将做什么*在mysql select子句中做什么
我想知道这将是继哪一列它将应用于不同的不同的查询
select distinct alias.* from table A alias;
的行为? 谢谢
假设你在该表上有一个唯一的键(或主键),或者只是没有重复,那么什么都没有。结果集中的每一行都将是唯一的。
为SELECT
statement MySQL文档指出DISTINCT
(或同义词,DISTINCTROW
)提到DISTINCT
简单地删除重复的行fromt他结果集。
DISTINCT
选择一个独特记录,而不是一个独特字段值。
在此查询中,正如@ydaetskcoR所说,如果您拥有主键DISTINCT
是无用的。
如果你不这样做,它只会选择一个重复记录的发生。
好的!我有我的主要在我的表A当我执行上面的查询结果我只得到98,但我想获得100条记录,当我删除不同它会给100个结果 – 2014-08-30 10:38:00
好的!当我执行上面的查询时,我的主表在我的表“A”中,我得到的结果只有98,但我想要得到100条记录,当我删除'distinct'时,它会得到100个结果。 – 2014-08-30 10:37:45
@oomph然后你有2行,它们在表格的其余部分以某种方式重复行。你必须正确地分析你的数据,看看在哪里。 – ydaetskcoR 2014-08-30 10:40:25
这两条记录如何重复。我在主表中有'AI'主键。 – 2014-08-30 10:42:12