小编Ran*_*som的帖子

SQL:将个人不同的诊断放入一个水平行

我正在将Microsoft SQL Server 2008用于心理健康组织.

我有一个列出所有客户端及其诊断的表,但每个诊断客户端都在新行中.我希望它们全部在水平列出的单行中,每个诊断的日期.有些人只有一个诊断,有些人有20个,有些人没有.

这是一个关于我的数据现在如何看起来的例子(只有少数客户,我们有数千个): http://i.imgur.com/pBV4svz.png

这是我最喜欢的格式: http://i.imgur.com/8cM2iNa.png

您可以提供的任何解决方案或正确方向的提示都会很棒,谢谢!

sql sql-server pivot

4
推荐指数
1
解决办法
939
查看次数

SQL:计算不同行中一列日期之间的天数

根据我的数据,我有个人在不同的日期多次进行评估.它看起来像这样:

??????????????????????????????????????????
? Person ? ID Number ? Date      ? Score ?
? John   ? 134       ? 7/11/2013 ? 18    ?
? John   ? 134       ? 8/23/2013 ? 16    ?
? John   ? 134       ? 9/30/2013 ? 16    ?
? Kate   ? 887       ? 2/28/2013 ? 21    ?
? Kate   ? 887       ? 3/16/2013 ? 19    ?
? Bill   ? 990       ? 4/18/2013 ? 15    ?
? Ken    ? 265       ? 2/12/2013 ? 23    ?
? Ken    ? 265       ? …
Run Code Online (Sandbox Code Playgroud)

sql date-arithmetic sql-server-2008

3
推荐指数
1
解决办法
5710
查看次数

找出SQL中两个24小时之间的小时差异

我有一个约会数据集,包括每个约会的开始和结束时间.我需要计算约会持续时间的小时数,但这两个字段是24小时制,格式为INTEGER.为了使事情更糟他们格式化为两个3个4字符整数所以8301630例如,不08301630.

创建具有这两列之间的小时数的列的最佳方法是什么?我已经尝试将它们转换CHAR为最后两个的子串,但我不能让它适用于3和4个时间长度.

它目前看起来像这样:

???????????????????????
? startTime ? endTime ?
???????????????????????
?       830 ?    1600 ?
?       400 ?     800 ?
?      1350 ?    1400 ?
???????????????????????
Run Code Online (Sandbox Code Playgroud)

理想情况下,我希望它看起来像这样:

???????????????????????????????
? startTime ? endTime ? Hours ?
???????????????????????????????
?       830 ?    1600 ? 7.5   ?
?       400 ?     800 ? 4     ?
?      1350 ?    1400 ? .5    ?
???????????????????????????????
Run Code Online (Sandbox Code Playgroud)

sql

1
推荐指数
1
解决办法
1587
查看次数