在 SQL Server [Moodle] [PHP] 中显示所有但避免重复 DB 列记录

Posted

技术标签:

【中文标题】在 SQL Server [Moodle] [PHP] 中显示所有但避免重复 DB 列记录【英文标题】:Display all yet avoid repetition of DB column records in SQL Server [Moodle] [PHP] 【发布时间】:2018-06-06 16:15:22 【问题描述】:

我想检索和显示数据库(SQL 服务器)中的值。唯一的问题是多条记录在列中具有相同的值。我基本上想循环浏览该列并显示所有唯一值的列表并省略相同的值。

$result = $DB->get_records_sql('SELECT column_name FROM table_name WHERE **cycle through column and list all values without duplicates**')

非常感谢任何帮助!

【问题讨论】:

【参考方案1】:

这应该从 SQL 端完成

SELECT DISTINCT(column_name) FROM table_name

可以将所有行拉回前端并在那里进行重复数据删除,但 DISTINCT 的性能可能会更好。

SELECT column_name FROM table_name GROUP BY column_name

是另一种选择。检查您的执行计划,看看 SQL 在性能方面的表现是否有任何不同。

【讨论】:

答案是正确的,但就性能而言,它更喜欢 group by 而不是 distinct

以上是关于在 SQL Server [Moodle] [PHP] 中显示所有但避免重复 DB 列记录的主要内容,如果未能解决你的问题,请参考以下文章

安装 - Moodle 3.5.2+(Build:20181103)错误

sql server的版本检查

安装moodle出现问题!建立了数据库,开始一切顺利,但是第一张图片之后就成了第二张图片。页面无任何显示

构建Moodle开发环境

Moodle简介

moodle3.7中文语言包