Php SQL显示重复条目

Php SQL显示重复条目,php,mysql,sql,Php,Mysql,Sql,我有一个从数据库中提取信息的SQL代码。代码如下: $info = "SELECT field_5, record_meta_keywords FROM cms_custom_database_1 WHERE field_5 > '' GROUP BY field_5 ORDER BY field_5 DESC LIMIT 10"; 问题是字段_5有重复的条目。例如,该字段中有两个868,但输出仅显示其中一个,而不显示另一个。如何更改此选项以显示所有条目,而不是每个数字中的一个?如果没有

我有一个从数据库中提取信息的SQL代码。代码如下:

$info = "SELECT field_5, record_meta_keywords
FROM cms_custom_database_1
WHERE field_5 > ''
GROUP BY field_5
ORDER BY field_5
DESC LIMIT 10";

问题是字段_5有重复的条目。例如,该字段中有两个868,但输出仅显示其中一个,而不显示另一个。如何更改此选项以显示所有条目,而不是每个数字中的一个?

如果没有聚合功能,则不应使用group by

SELECT field_5, record_meta_keywords
FROM cms_custom_database_1
WHERE field_5 > ''
ORDER BY field_5
DESC LIMIT 10
如果您希望使用distinct值,请使用distinct


SQL中不推荐使用不带聚合的group by函数,在最新版本的mysql中默认不允许使用,并且在其他版本中会产生不可预测的结果您不应该使用不带聚合的group by函数

SELECT field_5, record_meta_keywords
FROM cms_custom_database_1
WHERE field_5 > ''
ORDER BY field_5
DESC LIMIT 10
如果您希望使用distinct值,请使用distinct


SQL中不推荐使用group by with AGGRATION函数,在最新版本的mysql中默认不允许使用group by with AGGRATION函数,并在其他版本中产生不可预测的结果group by返回唯一的结果,即不同的事件。将其从查询语句中删除。

GROUP BY返回唯一的,即不同的事件。将其从查询语句中删除。

您通过group by明确声明,对于字段_5的每个值,您只需要结果集中的一行

这就给你留下了两个选择。一种是通过以下方式删除该组:

另一种方法是将其他数据合并到单个列中:

SELECT field_5, GROUP_CONCAT(record_meta_keywords) as record_meta_keywords
FROM cms_custom_database_1
WHERE field_5 > ''
GROUP BY field_5
ORDER BY field_5 DESC
LIMIT 10

您通过group by明确表示,对于字段_5的每个值,您只需要结果集中的一行

这就给你留下了两个选择。一种是通过以下方式删除该组:

另一种方法是将其他数据合并到单个列中:

SELECT field_5, GROUP_CONCAT(record_meta_keywords) as record_meta_keywords
FROM cms_custom_database_1
WHERE field_5 > ''
GROUP BY field_5
ORDER BY field_5 DESC
LIMIT 10