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

So wählen Sie einige bestimmte Spalten aus einer Tabelle aus, wenn die Tabelle mehr als 100 Spalten hat

Sie könnten die Spaltenliste generieren:

select  name + ', '
from    sys.columns
where   object_id = object_id('YourTable')
        and name not in ('column1', 'column2')

Es ist möglich, dies spontan mit dynamischem SQL zu tun:

declare @columns varchar(max)

select  @columns = case when @columns is null then '' else @columns + ', ' end +
            quotename(name)
from    sys.columns
where   object_id = object_id('YourTable')
        and name not in ('column1', 'column2')

declare @query varchar(max)
set @query = 'select ' + @columns + ' from YourTable'
exec (@query)