大家好。我有一个关于对 MySQL 表中的值进行分组的问题。任务如下,我有一个大约包含以下数据的表:
| ID | Tbl2_ID | Tbl3_ID | 信息 |
|---|---|---|---|
| 一 | 一 | 一 | 信息_1 |
| 2 | 一 | 2 | 信息_2 |
| 3 | 2 | 2 | 信息_3 |
| 四 | 一 | 一 | 信息_4 |
| 5 | 一 | 2 | 信息_5 |
| ... | ... | ... | ... |
字段“Tbl2_ID”和“Tbl3_ID”与数据库中的其他表链接。记录以不和谐的方式添加,我想对数据进行分组和排序,按两个字段(Tbl2_ID和Tbl3_ID)按组顺序显示。
我尝试使用Select * From Table Group By(Tbl2_ID , Tbl3_ID )它,但输出匹配的前 2 条记录...我不知道如何获取有序集合,在 Laravel 视图中我将 foreach 迭代并精美地格式化为连接表...
根据上表,结果应该看起来像这样(以明确我想要实现的目标):
| ID | Tbl2_ID | Tbl3_ID | 信息 |
|---|---|---|---|
| 一 | 一 | 一 | 信息_1、信息_4 |
| 2 | 一 | 2 | 信息_2、信息_5 |
| 3 | 2 | 2 | 信息_3 |
像这样的东西:
我认为根本不需要分组。这只是输出顺序的问题。见下文。GROUP BY 选择时对数据进行分组,在某一列有相同的值,但是我们这里应该显示什么相同呢?使用聚合函数,它也很好。