MySQL SELECT 带有一个 DISTINCT 字段的语句

MySQL SELECT statment with one DISTINCT field

我有一个汽车列表,每辆汽车都有 makemodel 列。我想从列表中提取独特的 make/model 组合列表。

例如,可能有 3 辆奥迪 A3 车辆,一辆红色,一辆蓝色等。我想查询 return 'Audi A3' 是有效的 make/model 无论如何它出现的次数。

这是我试过的查询:

SELECT make, DISTINCT model FROM bs_cars ORDER BY make, model ASC

我曾尝试将 DISTINCT 应用于 model,因为 make 下可能有各种模型。

这将为您提供独特的 make/model 组合列表

SELECT DISTINCT make, model FROM bs_cars ORDER BY make, model ASC

distinct 关键字应用于 select 列表一次,而不是每个字段:

SELECT DISTINCT make, model FROM bs_cars ORDER BY make, model ASC

DISTINCT 选项适用于行级别,仅从一列中选择不同的值是没有意义的。这就是它位于 SELECT 子句中出现的任何表达式之前的原因。

它从输出中删除重复的行,保留您在 table.

中的任何对 (make, model) 的单个实例
SELECT DISTINCT make, model
FROM bs_cars
ORDER BY make, model ASC

查看文档:http://dev.mysql.com/doc/refman/5.7/en/select.html