MySQL根据一行的唯一性选择DISTINCT多列?

标签 mysql

我试图理解这个查询到底做了什么:

SELECT DISTINCT `state`, `state_name` FROM `geo` ORDER BY `state_name` ASC

我想要做的就是选择 2 列(state 和 state_name),我只想要 state 字段没有重复值的唯一行。我不关心 state_name 字段中是否有重复值。

我的查询是检查两列的唯一性还是只检查状态?

最佳答案

DISTINCT 将只返回不同的行,所以:

Is my query checking both columns for uniqueness or just state?

两列

您也可以改用 GROUP BY。

SELECT `state`, `state_name` FROM `geo` group by 'state', 'state_name' ORDER BY `state_name` ASC 

关于MySQL根据一行的唯一性选择DISTINCT多列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10491474/

相关文章:

mysql - 如何使用用户lastActivity获取用户空闲了多少分钟?

mysql - 如何使用单个查询更新表中多个列的值?

MySQL 外键/自然连接

PHPExcel 如何在 MySQL 表中上传 excel 文件

mysql - 从联接表中选择多行

php - 如何从数据库读取数据并写入http 流。 PHP 和 MySQL

MeekroDB 中的 mysql_fetch_assoc

php - 在mysql中使用preg_replace

java - 这个 JDBC 程序有什么错误

php - 如何用字母在前,符号在后对 MySQL 结果进行排序?