php - 当 PHP 中存在重复项时,如何只显示一次 MySQL 数据库记录?

标签 php mysql

假设我的数据库是这样的:

id | person_id | hobby       | time
-----------------------------------
1  | 67        | golf        | mon
2  | 33        | reading     | tues
3  | 67        | baseball    | fri
4  | 67        | golf        | sun

我想在页面上显示 id 为 67 的人的所有爱好列表。

如果我这样做:

$query = mysql_query("SELECT * FROM hobbies WHERE person_id = '67'");

while ($row = mysql_fetch_assoc($query)) {

   echo $row['hobby'];

}

我会得到:

golf
baseball
golf

我希望同一个人id输入的重复爱好只显示一次,所以会显示:

golf
baseball

我所说的重复是指将同一个人的相同爱好输入数据库中的重复次数(只要不止一次,它就应该只显示一次)。

如何做到这一点?

最佳答案

$query = mysql_query("SELECT DISTINCT `hobby` FROM `hobbies` WHERE `person_id` = '67'");

DISTINCT 不会显示 hobby 的重复项。

Documentation .

关于php - 当 PHP 中存在重复项时,如何只显示一次 MySQL 数据库记录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3323627/

相关文章:

php - 连接表中唯一的一对值

php - 来自 html 表单的 $_POST 数组

php - Yii CGridview 分页 renderpartial

php - 如何避免使用 PHP 的多步骤表单 session 之间丢失信息?

c# - 从 C# 连接到 Amazon EC2 MySQL 时出错

php - MySQL(不是 mysqli)插入最后一个 ID 不起作用

php - Laravel 查询获取不同值的出现次数

javascript - HTML Form 在不离开当前页面的情况下向 PHP Form 发送数据

PHP PDO 如何只保留一个 MYSQL 连接

mysql - 在 mysql 中更新表 split()