sql >> Databasteknik >  >> RDS >> Sqlserver

sql server underfråga med en kommaseparerad resultatuppsättning

Här är ett knep som jag har använt tidigare för att göra liknande saker. Använd SUBSTRING fungera.

    SELECT n.nominationID
        , SUBSTRING((
                            SELECT ',' + naf.awardFocusName
                            FROM NominationAwardFocus naf
                            JOIN AwardFocus af
                                ON naf.awardFocusID = af.awardFocusID
                            WHERE n.nominationID = naf.nominationID
                            FOR XML PATH('')

                        ), 2, 1000000)
    FROM Nomination n

Observera att 2:an används för att skära av det inledande kommatecken som undervalet lägger till i det första objektet, och 1000000 väljs som ett stort tal för att betyda "hela resten av strängen".



  1. Ansluter du till DB från ett Chrome-tillägg?

  2. Hur man får data för varje timme i MySQL

  3. Installera WordPress med Nginx, MariaDB 10 och PHP 7 på Debian 9

  4. Hur använder man enums i Oracle?