Neuer Bezeichner per Unterabfrage?

S

SK06

Hallo,

ich schlage mich mit SQL server 2005 und dem folgenden Problem rum: Ich habe eine Tabelle, die betriebsinterne Abkürzungen im Spaltenkopf trägt. Damit es für Außenstehende verständlich wird, sollen dort vernünftige Bezeichnungen verwendet werden, also z.B. Groß- und Kleinschreibung korrekt sein. In der Datenbank gibt es eine Tabelle, in der sich die betriebsinternen Abkürzungen und die verständlichen Bezeichnungen gegenüber stehen. So, ich habe nun folgendes versucht:

select aStelle as (select bezeichnung from Tabelle1 where Abkürzung = aStelle) from Tabelle1

Rauskommen soll dabei eine Tabelle mit der Spaltenüberschrift Außenstelle statt aStelle und den Werten von aStelle der Tabelle1

SQL Server will nach "as" immer eckige Klammern. Wenn ich die nun hinschreibe habe ich als Spüaltenüberschrift das komplette sql-Statement.

Gibt es eine Lösung

Viele Grüße
SK06
 
Hallo,


SQL Server will nach "as" immer eckige Klammern. Wenn ich die nun hinschreibe habe ich als Spüaltenüberschrift das komplette sql-Statement.

Gibt es eine Lösung

Viele Grüße
SK06

Hallo,

Warum legst du nicht einfach eine View mit den korrekten Bezeichnungen über die Tabelle ? Ist natürlich nicht "dynamaisch"

Gruss
 
Dynamisch muss es aber sein. Es sind unendlich viele Tabellen, die von der Benutzeroberfläche aus angesprochen werden können.

Geht es also grundsätzlich nicht per Unterabfrage?

VG
SK06
 
Dynamisch muss es aber sein. Es sind unendlich viele Tabellen, die von der Benutzeroberfläche aus angesprochen werden können.

Geht es also grundsätzlich nicht per Unterabfrage?

VG
SK06



Du wirst dein SQL dynamisch aufbauen müssen, kenne aber MSSQL zuwenig umd dir da zu helfen. Googel mal nach "mssql dynamic sql".


Gruss
 
Hat MSSQL eine Scriptsprache?
Ich kenns nur von Oracle PL/SQL. Dort kann ich in einer Prozedure ein SQL dynamisch zusammensetzen.
Ansonsten greiffst du ja von irgend einer Programmiersprache auf die DB zu. In dieser RPogrammierspreche kannst du entweder das SQL zusammensetzen und an die DB senden oder die Feldnamen nachträglich überschreiben.

Mir reinem SQL wirst du das mWn nicht hinkriegen
 
Zurück