mysql - 按相同字段值对用户进行分组

标签 mysql

我有一个包含不同用户及其偏好的表格,如下所示

+--------+----------+--------------+
| id     | user_id  | preference_id|
+--------+----------+--------------+
|  15145 | 12       |    1         |
|  15146 | 13       |    1         |
|  15148 | 15       |    2         |
|  15150 | 25       |    2         |
|  15314 | 26       |    3         |
|  15315 | 29       |    1         |
|  15316 | 30       |    3         |
|  15317 | 32       |    3         |
|  15318 | 33       |    1         |
|  15319 | 34       |    2         |
+--------+----------+--------------+

我需要根据首选项 ID 对该用户进行分组。像这样:

+--------+----------+--------------+
| id     | user_id  | preference_id|
+--------+----------+--------------+
|  15145 | 12       |    1         |
|  15146 | 13       |    1         |
|  15315 | 29       |    1         |
|  15318 | 33       |    1         |
+--------+----------+--------------+

+--------+----------+--------------+
| id     | user_id  | preference_id|
+--------+----------+--------------+
|  15314 | 26       |    3         |
|  15316 | 30       |    3         |
|  15317 | 32       |    3         |
+--------+----------+--------------+

+--------+----------+--------------+
| id     | user_id  | preference_id|
+--------+----------+--------------+
|  15148 | 15       |    2         |
|  15150 | 25       |    2         |
|  15319 | 34       |    2         |
+--------+----------+--------------+

我检查了这个 mysqli 查询,但这个显示不能满足我的需求。

$sql="SELECT * FROM gic_user_preference GROUP BY preference_id";
$result=mysqli_query($createCon->connect(), $sql);
while ($arr = mysqli_fetch_assoc($result)) {
    var_dump($arr);
}

最佳答案

似乎您需要订购时间

SELECT * FROM gic_user_preference ORDER  BY preference_id

并检查循环中的preference_id更改...否则您必须对每个不同的preference_id执行选择并显示结果

关于mysql - 按相同字段值对用户进行分组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47151903/

相关文章:

php - 带有连接的 Doctrine DQL 条件查询

php - 在带有 DESCRIBE 的 PDO 准备语句中使用参数

php - Div 有莫名其妙的巨大右边距?

mysql - ZF2 清理数据库查询的变量

mysql - 从一个表中获取行,该行在其他表中具有条件(不知道如何命名)

php - mysql 1time 3种不同的排序

mysql - 是否可以将变量传递给mysql中的存储过程调用?

mysql - 无法从subsonic 2.2插入到mysql(Joomla CMS数据库)

php - 基于 MySQL Inner Join 的查询给出重复的结果

mysql - 目标表不可更新