如果我选择一列,例如
SELECT columnname FROM table
结果总是与
的顺序相同SELECT columnname FROM table GROUP BY columnname
还是依赖于DB管理系统?
答案 0 :(得分:4)
不,它不是相同的,因为第一个查询可能会返回重复项,而第二个查询则不会。
另一方面,此查询将返回与group by
一个相同的结果:
SELECT DISTINCT columnname FROM table
结果的顺序可能不同。
答案 1 :(得分:1)
它不一样,如果你的grup oyu每个列名只能获得一个记录,另一个你可以拥有多个记录。
答案 2 :(得分:1)
您发布的任何查询都未定义订单... 要设置顺序,必须放置ORDER BY子句,如下所示:
SELECT columnname FROM table ORDER BY columnname;
结果可能会出现重复的行或者不是......这取决于您的表上是否有重复的值。 GROUP BY子句只会选择每种类型中的一种,可以按照以下方式设置:
SELECT columnname FROM table GROUP BY columnname ORDER BY columnname;
或者,正如Dasblink先前所说,使用DISTINCT子句......
SELECT DISTINCT columnname FROM table ORDER BY columnname;
请注意,您只能使用ORDER BY和argumment或者设置ASC或DESC条件,因此订单将从较高值到较低值。