第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

連接行值T-SQL

連接行值T-SQL

心有法竹 2019-07-27 14:15:51
連接行值T-SQL我試圖將一些數(shù)據(jù)匯總到一個報告中,并需要連接其中一個表的行值。這是基本的表結(jié)構(gòu):評測 ReviewID   ReviewDate  評審 ReviewerID   ReviewID   UserID  用戶UserID  FName  LName  這是M:M的關(guān)系。每個評論都可以有很多評論者; 每個用戶都可以與許多評論相關(guān)聯(lián)?;旧?,我想要看的是Reviews.ReviewID,Reviews.ReviewDate,以及該Review的所有相關(guān)用戶的FName的串聯(lián)字符串(以逗號分隔)。代替:ReviewID---ReviewDate---User  1----------12/1/2009----Bob  1----------12/1/2009----Joe  1----------12/1/2009----Frank  2----------12/9/2009----Sue  2----------12/9/2009----Alice  顯示這個:ReviewID---ReviewDate----Users  1----------12/1/2009-----Bob, Joe, Frank  2----------12/9/2009-----Sue, Alice我發(fā)現(xiàn)這篇文章描述了一些方法,但是大多數(shù)方法似乎只處理一個表而不是多個; 不幸的是,我的SQL-fu不夠強大,無法根據(jù)我的情況進行調(diào)整。我對該網(wǎng)站上使用FOR XML PATH()的示例特別感興趣,因為它看起來最干凈,最直接。SELECT p1.CategoryId,( SELECT ProductName + ', '  FROM Northwind.dbo.Products p2  WHERE p2.CategoryId = p1.CategoryId  ORDER BY ProductName FOR XML PATH('')) AS ProductsFROM Northwind.dbo.Products p1GROUP BY CategoryId;任何人都可以幫我一把嗎?任何幫助將不勝感激!
查看完整描述

3 回答

?
BIG陽

TA貢獻1859條經(jīng)驗 獲得超6個贊

看看這個


DECLARE @Reviews TABLE(

        ReviewID INT,

        ReviewDate DATETIME

)


DECLARE @Reviewers TABLE(

        ReviewerID   INT,

        ReviewID   INT,

        UserID INT

)


DECLARE @Users TABLE(

        UserID  INT,

        FName  VARCHAR(50),

        LName VARCHAR(50)

)


INSERT INTO @Reviews SELECT 1, '12 Jan 2009'

INSERT INTO @Reviews SELECT 2, '25 Jan 2009'


INSERT INTO @Users SELECT 1, 'Bob', ''

INSERT INTO @Users SELECT 2, 'Joe', ''

INSERT INTO @Users SELECT 3, 'Frank', ''

INSERT INTO @Users SELECT 4, 'Sue', ''

INSERT INTO @Users SELECT 5, 'Alice', ''


INSERT INTO @Reviewers SELECT 1, 1, 1

INSERT INTO @Reviewers SELECT 2, 1, 2

INSERT INTO @Reviewers SELECT 3, 1, 3

INSERT INTO @Reviewers SELECT 4, 2, 4

INSERT INTO @Reviewers SELECT 5, 2, 5


SELECT  *,

        ( 

            SELECT  u.FName + ','

            FROM    @Users u INNER JOIN 

                    @Reviewers rs ON u.UserID = rs.UserID

            WHERE   rs.ReviewID = r.ReviewID

            FOR XML PATH('')

        ) AS Products

FROM    @Reviews r


查看完整回答
反對 回復 2019-07-27
?
慕桂英4014372

TA貢獻1871條經(jīng)驗 獲得超13個贊

事實證明,有一種更簡單的方法可以做到這一點,不需要UDF:

select replace(replace(replace((cast((
        select distinct columnName as X        from tableName 
        for xml path('')) as varchar(max))), 
   '</X><X>', ', '),'<X>', ''),'</X>','')


查看完整回答
反對 回復 2019-07-27
?
FFIVE

TA貢獻1797條經(jīng)驗 獲得超6個贊

有類似的問題,并在玩代碼15分鐘后找到了一個甜蜜的解決方案

declare @result varchar(1000)select @result = COALESCE(@result+','+A.col1, A.col1)
                FROM (  select  col1                        from [table] 
                ) Aselect @result

返回結(jié)果為value1,value2,value3,value4

請享用 ;)


查看完整回答
反對 回復 2019-07-27
  • 3 回答
  • 0 關(guān)注
  • 433 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號