sql >> データベース >  >> RDS >> Sqlserver

複数の行を 1 つの行に結合する TSQL

    declare @T table (FileID int, ErrorCode int, ErrorDesc varchar(max), ErrorCount int)
    
    insert into @T values
    (1,             4,                    'Bad File Name',          3),
    (2,             6,                    'Bad File Code',          56),
    (3,             4,                    'Bad File Name',          2),
    (3,             12,                   'Line Length Invalid',    3),
    (3,             17,                   'Missing Req Fields',     150)
    
    select FileID,
           (select cast(ErrorCode as varchar(10))+' '+ErrorDesc+' '+cast(ErrorCount as varchar(10))+' '
            from @T as T2
            where T1.FileID = T2.FileID
            for xml path(''), type).value('.', 'varchar(max)') 
    from @T as T1
    group by FileID
    


    1. IPアドレスに依存するビューカウンターを使用すると、MYSQL / PHPの作業負荷が大きくなりすぎる可能性がありますか?

    2. あるテーブルから別のテーブルにIDを更新する方法

    3. JOOQの複合主キーで複数の行を選択するにはどうすればよいですか?

    4. 入力をサニタイズしますが、出力が期待どおりではありません