Es gibt keine Möglichkeit, dies in einer Abfrage zu tun ... Was Sie tun können, ist dynamisch die Abfrage generieren;
Sie können dies auf verschiedene Arten erzeugen ... so ähnlich (nur Zahlen verwenden, um die Spaltennamen zu erstellen);
DECLARE @QueryString as varchar(max);
SELECT @QueryString = 'SELECT ';
SELECT
@QueryString = COALESCE(@QueryString + '[INT' + TheNumber + '],', '')
FROM
(SELECT DISTINCT RIGHT('000'+CAST(number AS VARCHAR(3)),3) AS TheNumber FROM master..[spt_values] WHERE number BETWEEN 0 AND 96) numbers
SELECT @QueryString = left(@QueryString, len(@QueryString) - 1) + ' FROM [YourTableName]'
print @QueryString
Gibt uns
SELECT [INT000],[INT001],[INT002],[INT003],[INT004],[INT005],[INT006],[INT007],[INT008],[INT009],[INT010],[INT011],[INT012],[INT013],[INT014],[INT015],[INT016],[INT017],[INT018],[INT019],[INT020],[INT021],[INT022],[INT023],[INT024],[INT025],[INT026],[INT027],[INT028],[INT029],[INT030],[INT031],[INT032],[INT033],[INT034],[INT035],[INT036],[INT037],[INT038],[INT039],[INT040],[INT041],[INT042],[INT043],[INT044],[INT045],[INT046],[INT047],[INT048],[INT049],[INT050],[INT051],[INT052],[INT053],[INT054],[INT055],[INT056],[INT057],[INT058],[INT059],[INT060],[INT061],[INT062],[INT063],[INT064],[INT065],[INT066],[INT067],[INT068],[INT069],[INT070],[INT071],[INT072],[INT073],[INT074],[INT075],[INT076],[INT077],[INT078],[INT079],[INT080],[INT081],[INT082],[INT083],[INT084],[INT085],[INT086],[INT087],[INT088],[INT089],[INT090],[INT091],[INT092],[INT093],[INT094],[INT095],[INT096] FROM [YourTableName]
Dies wäre auch einfacher und besser sein sys.columns mit den Spaltennamen aufzulisten, aber da ich den Tisch nicht hier haben oder Zeit, sie zu verspotten Ich habe mit einer einfachen Nummer eins gegangen.
Was für 'wählen INT001 auf gehen falsch, INT002, INT003, ... INT096 aus Tisch'? – vercelli