Announcement

Collapse
No announcement yet.

SQL Abfrage - Spalte vorhaden prüfen

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • SQL Abfrage - Spalte vorhaden prüfen

    Hallo zusammen,

    ich benötige Hilfe bei der Erstellung einer SQL-Abfrage auf einer MS SQL Server DB.

    Ausgangssituation:

    zwei Tabellen (auf zwei unterschiedlichen Datenbanken mit gleichem Namen):

    1) ID | Name | Feld
    2) ID | Name

    Nun möchte ich prüfen, ob bei der DB die Spalte Feld vorhanden ist und wenn ja, dann diese mit ausgeben. Ansonsten nur die anderen Daten. Leider kann ich das (siehe unten) aber nicht über eine if-Bedingung (diese funktioniert korrekt) ausschließen, da MS Sql die komplette SQL-Syntax prüft und obwohl der erste Zweig (bei Nichtvohandensein der Spalte) nicht durchlaufen werden soll, wird trotzdem das Fehlen der Spalte gemeldet.


    Code:
    if (select count(AliasID) from tabelle where AliasID = 'Feld') > 0
    (Select ID, Name, Feld from tabelle)
    else
    (Select ID, Name from tabelle)
    Würde mich freuen, wenn jemand eine Antwort weiß.
    MFG

  • #2
    Geht etwa so:
    Code:
    if exists
      (select 1 from INFORMATION_SCHEMA.columns
          where table_name = 'tabelle'
          and column_name = 'feld')
    exec ('select id, name, feld from tabelle')
    else exec ('select id, name from tabelle')
    bye,
    Helmut

    Comment


    • #3
      super vielen Dank!

      Comment

      Working...
      X