Announcement

Collapse
No announcement yet.

Abfrage: nur Felder berücksichtigen mit bestimmten Zeichen im Namen

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

  • Abfrage: nur Felder berücksichtigen mit bestimmten Zeichen im Namen

    Hallo zusammen,

    vielleicht kann mir jemand weiterhelfen...

    Ich möchte eine Datenbankabfrage durchführen, in der nur Felder mit bestimmten Namen berücksichtigt werden.

    Beispiel:

    Feldnamen: s_feld_1, s_feld_2, k_feld_1, k_feld_2

    Abfrage: UPDATE tablename SET s_feld_1, s_feld_2 = "string"

    Es sollen alle Felder mit 's_' im Feldnamen berücksichtigt werden, ich will aber nicht alle Feldnamen einzeln angeben.

    So in der Art: UPDATE tablename SET s_* = "string"

    Kann mir jemand sagen, ob und wenn ja wie das funktioniert?

    Vielen Dank für Antworten im Voraus,
    Grüße Melly

  • #2
    Sowas kann man in SQL direkt definitiv nicht machen. Zumindest meines Wissen nach nicht. SQL braucht immer eine feste Anzahl Spalten.
    In der Datenbankeigenen Programmiersprache lässt sich sowas über stored procedures und dynamischen SQL aber mit Sicherheit lösen.

    Comment


    • #3
      Hi,

      Je nach Datenbanksystem gibt es eine Tabelle, die von allen Spalten die Namen enthält und in welcher Tabelle sie sind, welchen Typ usw. Ist zwar auch meist schon symboltechnisch umgesetzt (also nach dem Namen nur noch IDs) Die kannst Du nutzen um über ein Programm vorher den entsprechenden SQL-String zusammenzusetzen. Innerhalb von SQL kannst Du aber nicht mit den Namen der Spalten operieren, da diese Namen für den Rechner ja schon in Speicheradressen und Tabellenoffsets umgerechnet sind (Stell Dir mal vor, Du würdest einem VB oder C++ Programm sagen wollen "Gib mir die Werte sämtlicher Variablen, die ein x im Namen enthalten" )

      Comment

      Working...
      X