我在過去一天左右的時間裏對此進行了大量的背景閱讀,我對如何實現這一點並不知情。將每個列值連接到子查詢的字符串
我已經看過這個網站,發現串聯多行成一列但是我後有點多定製的,請幫助的方式...
我有兩個表 - 一個是一個列表的人和他們的細節,如名稱等和一個人的參考。
第二個包含許多關於某個人的警報,一個人可以有多個警報。這將包含一個人參考和他們在一個字符串中的警報類型。
我想加入這兩個表使用人蔘考的內部聯接。 我接下來想要查找每個人的所有警報,並將其連接成一個字符串,並將其顯示爲「所有警報」列。
所以我將結束與以下的輸出:
First Name | Surname | All Alerts
-----------+---------+--------------------------
Tony | Stark | Alert 1, Alert 2, Alert 3
我能得到儘可能通過所有的警報表警報的打算,把警報每個人變成了一個字符串,很明顯,我每個人都需要一個連接的價值,並沒有想出如何做到這一點。
我已經花了一天時間瞭解了這一點,並研究了XMLPath解決方案並使用CTE,CROSS APPLY和子查詢來指定where子句。我有點失落。
DECLARE @ConcatenatedVals VARCHAR (255)
SET @ConcatenatedVals =
(
DECLARE @AllAlerts VARCHAR(8000)
SELECT @AllAlerts = COALESCE(@AllAlerts + ', ', '') + personAlert
FROM Alerts
SELECT @AllAlerts AS 'All Alerts'
)