mysql 一行记录中只显示列值不为空的列,怎么写语句,急急!!

zhou_bo8 2017-11-02 12:35:07
比如有一下数据:

id name age address other
1 李明 10 上海
2 小王 北京 博士
3 小周 21 学士


数据处理完显示:
id name age address
1 李明 10 上海
id name address other
2 小王 北京 博士
id name age other
3 小周 21 学士

请各位大神帮忙指点下mysql语句怎么写!!
...全文
1093 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq_43372440 2019-03-28
  • 打赏
  • 举报
回复
引用 1 楼 二月十六 的回复:
没办法这样做。除非列名固定成col 1col 2这样的,并且规定好,那些字段和这些固定的列名怎么固定。
我现在的列名就是像这样,前几个字段不一样,但是之后一千个全是sub1 sub2,就这样到1000,有没有办法只取出不为空的字段
qq_39170916 2019-03-28
  • 打赏
  • 举报
回复
create table test( id int, name varchar(10), age int, address varchar(10), other varchar(10) ); insert into test values (1, '李明', 10, '上海',''), (2, '小王', 0, '北京', '博士'), (3, '小周', 21, '', '学士'); select id, name, ifnull(age,address) as c1, ifnull(address,other) as c2 from test ;
卖水果的net 2018-08-23
  • 打赏
  • 举报
回复

-- 这个意思 ?

create table test(
	id int, 
	name varchar(10), 
	age int,
	address varchar(10), 
	other varchar(10)
)
go
insert into test values
(1, '李明', 10, '上海',''),
(2, '小王', 0, '北京', '博士'),
(3, '小周', 21, '', '学士')
go
with m as (select * from test)
select 1 xh, id pk,'id' id , 'name', 'age', 'address', 'other' from m
union all
select 2, id pk, ltrim(id),  name,  ltrim(age),  address,  other  from m
order by pk ,1 
go
drop table test
go


1           1           id           name       age          address    other
2           1           1            李明         10           上海         
1           2           id           name       age          address    other
2           2           2            小王         0            北京         博士
1           3           id           name       age          address    other
2           3           3            小周         21                      学士

(6 行受影响)


Aureole_1 2018-08-23
  • 打赏
  • 举报
回复
用存储过程,创建一张临时表,把每一列有数据的查出来然后写入到一张临时表
junki 2017-11-11
  • 打赏
  • 举报
回复
数据可以加载所有字段吧,如果一定要这样显示,要根据数据自动绘制界面 你是用在SSIS项目中?
zhou_bo8 2017-11-02
  • 打赏
  • 举报
回复
循环语句,一条一条记录输入,处理为空的列输出的时候舍弃掉
zhou_bo8 2017-11-02
  • 打赏
  • 举报
回复
有什么办法可以实现这样的输出吗!
二月十六 2017-11-02
  • 打赏
  • 举报
回复
没办法这样做。除非列名固定成col 1col 2这样的,并且规定好,那些字段和这些固定的列名怎么固定。

594

社区成员

发帖
与我相关
我的任务
社区描述
提出问题
其他 技术论坛(原bbs)
社区管理员
  • community_281
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧