查询空不显示

buzhunmeiyouni 2017-11-28 10:30:10
原表


select * from cs wherefbillno='POREQ000024'


怎么让那些为空的字段不显示出来
...全文
274 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
文盲老顾 2017-11-28
  • 打赏
  • 举报
回复
declare @prepare int,@handle int,@arg xml
create table #con(id int identity,rowid int,colname varchar(10),val nvarchar(max))
;with a as (
	select '1' as name,'m4360' as tp,'台' as unit,1 as num,'2222' as memo,'poreq000022' as fbillno,'' as [001],'' as [001供应商],'' as [001中标],6 as 李四,'北京蓝宝集团' as 李四供应商,'2.0送样中'  as 李四中标
)
select @arg = (select * from a for xml raw,type,root('r'))
exec @prepare = sp_xml_preparedocument @handle output,@arg
insert into #con(rowid,colname,val)
--select a.localname,b.text from openxml(@handle,'/r',1) a left join openxml(@handle,'/r',1) b on b.parentid=a.id where a.parentid=0 order by a.id
select 1,a.localname,b.text from openxml(@handle,'/r',1) a left join openxml(@handle,'/r',1) b on b.parentid=a.id where a.nodetype=2 and datalength(b.text)>0
--select * from #con
--select * from tempdb..sysobjects where id=object_id('tempdb..#con')
declare @sql nvarchar(max)
set @sql = 'select * from (select rowid,colname,val from #con) a pivot(max(val) for colname in (' + (select stuff((select ',[' + colname + ']' from #con for xml path('')),1,1,'')) + ')) pvt'
exec(@sql)
drop table #con
针对单条数据只显示有有效数据的列
buzhunmeiyouni 2017-11-28
  • 打赏
  • 举报
回复
只会出现要么有数据,要么没数据
buzhunmeiyouni 2017-11-28
  • 打赏
  • 举报
回复
引用 3 楼 sinat_28984567 的回复:
[quote=引用 2 楼 buzhunmeiyouni 的回复:] [quote=引用 1 楼 sinat_28984567 的回复:] 不写select *,用select 字段名称 from 表,把要显示的字段名都写上
不行,应为fbillno 的值不确定是哪个,所以查询出来的结果也不一样[/quote] 如果查询出来两条数据,第一条数据的字段为空,第二条不为空怎么显示?[/quote] 不会出现这种结果的放心
二月十六 2017-11-28
  • 打赏
  • 举报
回复
引用 2 楼 buzhunmeiyouni 的回复:
[quote=引用 1 楼 sinat_28984567 的回复:] 不写select *,用select 字段名称 from 表,把要显示的字段名都写上
不行,应为fbillno 的值不确定是哪个,所以查询出来的结果也不一样[/quote] 如果查询出来两条数据,第一条数据的字段为空,第二条不为空怎么显示?
buzhunmeiyouni 2017-11-28
  • 打赏
  • 举报
回复
引用 1 楼 sinat_28984567 的回复:
不写select *,用select 字段名称 from 表,把要显示的字段名都写上
不行,应为fbillno 的值不确定是哪个,所以查询出来的结果也不一样
二月十六 2017-11-28
  • 打赏
  • 举报
回复
不写select *,用select 字段名称 from 表,把要显示的字段名都写上

588

社区成员

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

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