2

如果我选择一列,例如

SELECT columnname FROM table

结果是否总是与

SELECT columnname FROM table GROUP BY columnname

还是取决于数据库管理系统?

4

3 回答 3

4

不,这一样,因为第一个查询可能返回重复项,而第二个查询不会。

另一方面,此查询将返回与该查询相同的结果group by

SELECT DISTINCT columnname FROM table

结果的顺序可能不同。

于 2013-02-15T16:18:03.677 回答
1

它不一样,如果你 grup oyu 每个列名只会得到一条记录,另一个你可以有多个。

于 2013-02-15T16:18:47.833 回答
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 和参数或放置 ASC 或 DESC 条件,因此顺序将来自较高的值到较低的值。

于 2013-02-15T16:45:56.853 回答