这是我的查询,它工作的很好,但是如果有一行有空值的东西函数不符合我的要求。任何替代方法来做到这一点? (如:空值的电话号码格式,464-987-987)SQL Server中的STUFF()函数用于行列中的空白空间
SELECT
smsFDGPatientOrder.ID,
STUFF((SELECT ', ' + [smsFDGPatientOrderPhoneNumbers].Number
FROM [smsFDGPatientOrderPhoneNumbers]
WHERE [smsFDGPatientOrderPhoneNumbers].FDGPatientOrder = smsFDGPatientOrder.ID
ORDER BY Number
FOR XML PATH('')), 1, 1, '') [PatientPhno]
FROM smsFDGPatientOrder
GROUP BY smsFDGPatientOrder.ID
样本数据不能正常工作
ID Name Number FDGPatientOrder Type Index
189950 Home 630-561-3777 170638 1 NULL
189951 Home 170638 1 NULL
'SELECT ... WHERE Number IS NOT NULL'不会选择NULL数字......看起来像你应该做的事情。 –
@TT是的正确。但是WHERE Number <> LTRIM('')就是。 –