Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

So fügen Sie leere Zeilen hinzu, wenn Sie die Abfrage sql auswählen

Obwohl ich die Ursache dieser Aufgabe nicht verstehe, können Sie es trotzdem so machen:

DECLARE @t TABLE ( ID INT )
DECLARE @c INT  = 8

INSERT  INTO @t
VALUES  ( 1 ),
        ( 2 ),
        ( 3 );
WITH    cte
          AS ( SELECT   1 AS rn
               UNION ALL
               SELECT   rn + 1
               FROM     cte
               WHERE    rn <= @c
             )
    SELECT TOP ( @c )
            *
    FROM    ( SELECT    ID
              FROM      @t
              UNION ALL
              SELECT    NULL
              FROM      cte
            ) t
    ORDER BY ID DESC      

Ausgabe:

ID
3
2
1
NULL
NULL
NULL
NULL
NULL