GROUP BY 分组后显示组内所有数据 数据表中需要根据某一个字段进行分组,但需要显示分组后组内的所有数据。两种方式:
1.数据表自己和自己进行连接查询,连接条件就是需要分组的字段,但这种方式查询出的结果集重复太多,需要处理。
select t1.region,t2.id,t2.name from trading_center t1 LEFT JOIN trading_center t2 on t1.region=t2.region;select t1.region,t2.id,t2.name from trading_center t1 LEFT JOIN trading_center t2 on t1.region=t2.region;
2.需要数据表中有内容唯一的列,比如主键。在分组条件后加上该字段,因为该字段的值为一,其实就是相当于继续对它分组,但它的值唯一,所以回全部显示。
select * from trading_center GROUP BY region,id;
更简单的就是直接用需要分组的列进行排序
select * from trading_center ORDER BY region