首页 新闻 会员 周边

帮忙修改SQL语句

0
悬赏园豆:20 [已关闭问题] 关闭于 2013-04-18 16:31

select signDate,min(case when t.userid='bfg1' then t.signTime else null end ) as 'bfg1',
(case when t.userid='dp' then t.signTime else null end ) as 'dp',(case when t.userid='fw1' then t.signTime else null end ) as 'fw1',
(case when t.userid='fwdk' then t.signTime else null end ) as 'fwdk',(case when t.userid='kf1' then t.signTime else null end ) as 'kf1'
from temp_UserSignIntable t
group by signDate,signTime,userid

怎么将图片上的数据合并到一块???? 就是每一天只有一行。

Shang0109的主页 Shang0109 | 初学一级 | 园豆:50
提问于:2012-12-13 16:33
< >
分享
所有回答(2)
0

你的描述并不清楚,除了日期合并之外,其他的字段如何处理?取“非null”的字段?如果两个字段都有日期(这种可能行存在么?)的话如何处理,问题描述清楚 了,别人才有可能帮到你。

jzzlo | 园豆:282 (菜鸟二级) | 2012-12-13 17:02

已经修改过了 。谢谢。这个问题刚刚已经解决了 。

declare @sql varchar(500)set @sql='select signdate'
select @sql=@sql+',min(case userid when '''+ userid+''' then signTime else null end) ['+userid+']'
from (select distinct userid from temp_UserSignIntable) a
set @sql=@sql + ' from temp_UserSignIntable group by SignDate'

exec(@sql)

 

但是仍然非常感谢你的建议。有兴趣的话交个朋友 QQ1754819299,多交流。我是个新手

支持(0) 反对(0) Shang0109 | 园豆:50 (初学一级) | 2012-12-13 17:06

@Shang0109: 写的存储过程。。。648960915.可以一起学习。。

支持(0) 反对(0) jzzlo | 园豆:282 (菜鸟二级) | 2012-12-13 17:11
1

如果你没有值的地方都是null或者空那么就容易了

select signDate,isnull(max(bfg1),"")... from table group by signDate

茂茂 | 园豆:2892 (老鸟四级) | 2012-12-13 17:17
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册