Mysql& PHP更正查询语法

时间:2012-08-23 05:09:07

标签: php mysql

我试图让这个查询在这个例子中只显示1个结果(不是LIMIT):

SELECT company_id  FROM `location` WHERE `state` = 'XX'

结果与此类似:

16 9 9 9 9 30 30 30 45 50 50 50 50 57 7 79 80 80 80 80 120 120 120 120 120 128 131 120 265 265

我的目标是获得这些结果:

16 9 30 45 50 57 7 79 80 120 128 131 120 265

3 个答案:

答案 0 :(得分:3)

只需在列名

之前添加DISTINCT关键字
SELECT DISTINCT company_id FROM `location` WHERE `state` = 'XX'

DISTINCT语句中的SELECT关键字会删除查询返回的重复项。

答案 1 :(得分:1)

使用DISTINCT关键字

SELECT DISTINCT company_id  FROM `location` WHERE `state` = 'XX'

它会给出理想的结果。

答案 2 :(得分:0)

当您想要检索不同的结果集时,只需使用DISTINCT .....

SELECT DISTINCT company_id  FROM `location` WHERE `state` = 'XX'

您可以通过以下方式使用Group By替代DISTINCT:

 SELECT company_id  FROM `location` WHERE `state` = 'XX' GROUP BY company_id  

尽管我强烈建议您在方案中使用DISTINCT,但GROUP BYDISTINCT会产生与性能相同的执行计划......