我正在将Microsoft SQL Server 2008用于心理健康组织.
我有一个列出所有客户端及其诊断的表,但每个诊断客户端都在新行中.我希望它们全部在水平列出的单行中,每个诊断的日期.有些人只有一个诊断,有些人有20个,有些人没有.
这是一个关于我的数据现在如何看起来的例子(只有少数客户,我们有数千个):

这是我最喜欢的格式:

您可以提供的任何解决方案或正确方向的提示都会很棒,谢谢!
根据我的数据,我有个人在不同的日期多次进行评估.它看起来像这样:
??????????????????????????????????????????
? 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) 我有一个约会数据集,包括每个约会的开始和结束时间.我需要计算约会持续时间的小时数,但这两个字段是24小时制,格式为INTEGER.为了使事情更糟他们格式化为两个3个4字符整数所以830与1630例如,不0830和1630.
创建具有这两列之间的小时数的列的最佳方法是什么?我已经尝试将它们转换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)