首页 > 数据库 > mysql教程 > 如何从 MySQL 中的多个列中获取真正不同的值?

如何从 MySQL 中的多个列中获取真正不同的值?

Linda Hamilton
发布: 2024-10-29 11:05:02
原创
534 人浏览过

How to Get Truly Distinct Values from Multiple Columns in MySQL?

如何从 MySQL 中的多个列中选择不同的值

使用数据库时,通常需要从多个列中检索唯一或不同的值列。但是,使用简单的 SELECT DISTINCT 子句可能并不总能产生所需的结果。

问题

考虑以下场景:

Table: foo_bar

foo | bar
--- | ---
a   | c
c   | f
d   | a
c   | a
f   | c
a   | c
d   | a
a   | c
c   | a
f   | c
登录后复制

运行查询 SELECT DISTINCT foo, bar FROM foo_bar 将返回以下结果:

foo | bar
--- | ---
a   | c
c   | f
d   | a
c   | a
f   | c
登录后复制

请注意,虽然每列的值不同,但对本身却不同。例如,a 和 c 对出现两次,只是顺序不同。

解决方案:使用 GROUP BY

要获得真正不同的值对,您可以可以利用 GROUP BY 子句:

SELECT foo, bar FROM foo_bar GROUP BY foo, bar
登录后复制

GROUP BY 子句指示数据库根据指定的列对结果进行分组。在这种情况下,它将按 foo 和 bar 列对行进行分组。

因此,查询将仅返回唯一的值对:

foo | bar
--- | ---
a   | c
c   | f
d   | a
登录后复制

此方法可确保您仅从多个指定列中检索唯一的值组合。

以上是如何从 MySQL 中的多个列中获取真正不同的值?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板