2

我正在GROUP_CONCATSQL Server 中搜索等效函数,发现这两个选项是CROSS APPLYSTUFF。因为我想在日程表中使用joinconcatenate的字段的日期。sday这是我的数据库架构,请参阅下面的照片。那么这个更好的方法是什么?

医生模式调度模式

我尝试STUFF了这样的功能,我得到了重复的记录:

在此处输入图像描述

4

2 回答 2

3

连接查询中的值没有问题。您可以看到自己正确地返回了结果。另外,请注意,STUFF()连接不是这样,它是FOR XML PATH('').

您会得到重复的记录,因为您在doctorand之间进行了内部连接schedule。其中一位医生有 4 条记录在日程中。具体来说,列start_timeend_timesstatus问题所在。您可能无法按它们分组,因为时间表的每一天的值可能不同。

您可以:

  • 不在查询中返回这些列,
  • 或连接这些列。
于 2014-03-13T05:26:46.707 回答
0

您可能希望在 MSDN 上查看以下关于 Group Concat 函数的线程 http://social.msdn.microsoft.com/Forums/sqlserver/en-US/f09d4166-2030-41fe-b86e-392fbc94db53/tsql-equivalent-for-groupconcat -function?forum=transactsql

这四个条目是因为日程表必须有四个条目星期一、星期二、星期三和星期四。检查您已应用的内部联接。

于 2014-03-13T05:20:30.557 回答