none
Weiteren Wert einfügen RRS feed

  • Frage

  • Hallo,

    ich habe folgendes Problem:

    Ich habe in meiner Tabelle den Wert X, x=Zahl, aber ich möchte, dass er bei einem weiteren INSERT einen Eintrag mit x+1 macht, also wenn x=1 dann sollte der zweite Eintrag 2 und der dritte 3 sein, aber leider ist der zweite, sowie der dritte Eintrag 2, welches leider nicht die Lösung ist.

    mfg,

    Christopher
    Dienstag, 1. September 2009 10:49

Antworten

  • Hallo Christopher,

    INSERT INTO Tabelle(X, Y, Z)
    SELECT ISNULL(SELECT MAX(X) FROM Tabelle), 0) + 1,
    -- Weitere Spalten
           4711 AS Y, 'abc' AS Z
    

    Gruß Elmar

    • Bearbeitet Elmar Boye Dienstag, 1. September 2009 13:11 Formatierung
    • Als Antwort markiert Christopher B. _ Sonntag, 6. September 2009 09:17
    Dienstag, 1. September 2009 11:13

Alle Antworten

  • Hallo Christopher,

    INSERT INTO Tabelle(X, Y, Z)
    SELECT ISNULL(SELECT MAX(X) FROM Tabelle), 0) + 1,
    -- Weitere Spalten
           4711 AS Y, 'abc' AS Z
    

    Gruß Elmar

    • Bearbeitet Elmar Boye Dienstag, 1. September 2009 13:11 Formatierung
    • Als Antwort markiert Christopher B. _ Sonntag, 6. September 2009 09:17
    Dienstag, 1. September 2009 11:13
  • Könntest Du mir ggf. erklären, was Du mir da geschrieben hast? :)

    Danke
    Dienstag, 1. September 2009 12:04
  • Hallo Christopher,

    SQL ;-)

    Hier bestehend aus einer Unterabfrage , die den letzen Wert der Spalte X abruft.
    Und diesen um einen erhöht. Sollte es noch keinen Eintrag in der Tabelle
    geben, sorgt ISNULL dafür, das ein gültiger Wert erzeugt wird.

    Die weiteren Spalten Y, Z sind nur Platzhalter für weitere (angenommene Spalten.

    Das war das Maximum, was ich aus Deiner Frage, die nicht übermäßig
    verständlich formuliert war, extrahieren konnte.

    Wenn Du das nicht direkt auf Deine Situation übertragen kannst,
    werde bitte konkreter.

    Gruß Elmar




    Dienstag, 1. September 2009 13:11