sql >> Database teknologi >  >> RDS >> Sqlserver

Sådan tilføjes tomme rækker, når du vælger forespørgsel sql

Selvom jeg ikke forstår årsagen til denne opgave, kan du alligevel gøre det som:

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      

Output:

ID
3
2
1
NULL
NULL
NULL
NULL
NULL



  1. hvordan tilpasses 'vis procesliste' i mysql?

  2. Ignorer 'views' i mysql db backup ved hjælp af mysqldump

  3. BLOB i MySQL-visning i stedet for de korrekte data

  4. 2 måder at sammenkæde en streng og et tal i Oracle