我的MySQL表country_phone_codes看起来像这样MySQL查询使用DISTINCT关键字
id country_code area_code name
------------------------------------------------------------
1 | 93 | 93 | AFGHANISTAN
2 | 93 | 9370 | AFGHANISTAN - MOBILE
3 | 93 | 9375 | AFGHANISTAN - MOBILE
4 | 355 | 355 | ALBANIA
5 | 355 | 35568 | ALBANIA - MOBILE - AMC
6 | 213 | 213 | ALGERIA
7 | 213 | 2131 | ALGERIA - CAT
------------------------------------------------------------
这些只是超过28000条记录几个记录。我试图制定一个查询,将提供给我的结果就像这 -
country_code name
-----------------------------
93 | AFGHANISTAN
355 | ALBANIA
213 | ALGERIA
-----------------------------
通过使用SELECT DISTINCT(country_code) FROM country_phone_codes ORDER BY country_code LIMIT 0,260
,我能得到不同的国家代码。但是,我如何获得相应的国家名?
如果您在使用前几个答案中提到的查询,你会随机获得例如代码#93的“AFGHANISTAN”或“AFGHANISTAN - MOBILE”。 – 2012-03-07 06:39:55
@SalmanA,对SQL来说可能是真的,但对于这个问题所涉及的MySQL来说可能不是这样。 – danorton 2012-03-07 06:49:15
@danorton:* true *表示MySQL,不适用于需要完整分组的其他数据库。当在GROUP BY中不存在的选择列表中指定列时,MySQL将愉快地返回它在分组行中找到的任何值。当你预计'AFGHANISTAN'时,它可能会返回'阿富汗 - 移动'。 [参考文献](http://dev.mysql.com/doc/refman/5.6/en/group-by-hidden-columns.html)。 – 2012-03-07 06:57:36