sql语句实现多条数据合为一条数据
2017-12-06 20:15
197 查看
今天遇到个函数感觉很有用,给你们举个例子吧:
当我们给用户多个角色的时候,我们的用户角色表的展示方式有两种,
一种是把所有角色何在一起变成一个字符串,然后在该表查看用户就能看到一条关于用户角色的数据
另一种就是插入多条数据,一个用户一个角色,然后再对同一个用户insert一个角色,也就是当查询一个用户的时候,返回的是多条数据
个人感觉返回多条的数据这种方式便于数据库管理,但是如果在前台展示的话,数据量就比较多,不够直观
所以我们在展示的时候就用sql语句把多条同用户的数据何在一起展示
这里用到一个函数wm_concat(字段),注意结合group by
举个例子:
select
wm_concat(角色字段) as roleName
from 用户角色表
group by userId
这个函数就一个用,就是把多条数据通过分组转换合并为一条数据,合并的时候要注意了,其他字段如果不一样,就也要加上这个函数,还有不要忘了group by
当我们给用户多个角色的时候,我们的用户角色表的展示方式有两种,
一种是把所有角色何在一起变成一个字符串,然后在该表查看用户就能看到一条关于用户角色的数据
另一种就是插入多条数据,一个用户一个角色,然后再对同一个用户insert一个角色,也就是当查询一个用户的时候,返回的是多条数据
个人感觉返回多条的数据这种方式便于数据库管理,但是如果在前台展示的话,数据量就比较多,不够直观
所以我们在展示的时候就用sql语句把多条同用户的数据何在一起展示
这里用到一个函数wm_concat(字段),注意结合group by
举个例子:
select
wm_concat(角色字段) as roleName
from 用户角色表
group by userId
这个函数就一个用,就是把多条数据通过分组转换合并为一条数据,合并的时候要注意了,其他字段如果不一样,就也要加上这个函数,还有不要忘了group by
相关文章推荐
- Mysql 一条SQL语句实现批量更新数据,update结合case、when和then的使用案例
- Mysql 一条SQL语句实现批量更新数据,update结合case、when和then的使用案例
- Mysql 一条SQL语句实现批量更新数据,update结合case、when和then的使用案例
- SQL 如何实现一条sql语句插入1000行数据
- Mysql 一条SQL语句实现批量更新数据,update结合case、when和then的使用案例
- 关于用一条sql语句实现交换两条记录的的数据
- Mysql一条sql语句实现数据去重操作
- Mysql 一条SQL语句实现批量更新数据,update结合case、when和then的使用案例
- 一条SQL语句实现:一行多个字段数据的最大值。
- oracle从多表中获取数据,然后用一条sql语句插入多条数据
- sql语句实现随机取n条数据(转)
- 用T-SQL语句实现SQL server与XLS,MDB等文件的数据交换
- SQL语句实现合并数据(原创)
- Oracle:一条SQL实现将多行数据并…
- 用SQL语句实现异构之间的导数据导入/出
- :一条SQL实现将多行数据并为一行显示
- 如何写随机从表中抽一条数据的SQL语句
- 请用一条sql语句实现求最高成绩,
- 每隔一段时间就从服务端下载数据使用sql语句实现
- 【SQL】oracle 一条语句更新两行,decode函数交换两行数据,实例教程