Lukas.: UNION SELECT einen Vorgabewert geben?

Hi,

sorry, meine Überschrift triffts nicht so ganz. Was ich meine: Kann ich einer Query

SELECT ID
FROM t1
WHERE ID = 10
UNION
SELECT ID
FROM t2
WHERE ID = 10
UNION
SELECT ID
FROM t3
WHERE ID = 10

etwas mitgeben, sodass am Ende sowas rauskommt?

t1 2
t1 5
t1 8
t2 6
t2 8
t2 15
t3 1
t3 9

Gruß, L.

  1. Hallo

    sorry, meine Überschrift triffts nicht so ganz.

    Tatsächlich.

    Kann ich einer Query

    SELECT ID
    FROM t1
    WHERE ID = 10
    UNION
    SELECT ID
    FROM t2
    WHERE ID = 10
    UNION
    SELECT ID
    FROM t3
    WHERE ID = 10
    

    etwas mitgeben, sodass am Ende sowas rauskommt?

    Was ist „etwas“?

    t1 2
    t1 5
    t1 8
    t2 6
    t2 8
    t2 15
    t3 1
    t3 9
    

    Dass mit der oberen Abfrage das gezeigte Ergebnis nie und nimmer zurückgegeben werden kann, weil du das Ergebnis in jeder Tabelle auf jeweils die ID des Datensatzes mit der ID „10“ beschränkst, ist dir klar? Mit deiner Beschreibung der Aufgabe, kann zumindest ich dir nicht helfen. Vielleicht kommt jemand anderes drauf, besser ist es aber, wenn du die Aufgabe besser und detaillierter beschreibst.

    Tschö, Auge

    --
    Wenn man ausreichende Vorsichtsmaßnahmen trifft, muss man keine Vorsichtsmaßnahmen mehr treffen.
    Toller Dampf voraus von Terry Pratchett
    1. Hi Auge,

      Dass mit der oberen Abfrage das gezeigte Ergebnis nie und nimmer zurückgegeben werden kann, weil du das Ergebnis in jeder Tabelle auf jeweils die ID des Datensatzes mit der ID „10“ beschränkst, ist dir klar?

      Natürlich. Mea culpa. Sollte immer "WHERE ID_2 = 10" heißen.

      Mit deiner Beschreibung der Aufgabe, kann zumindest ich dir nicht helfen. Vielleicht kommt jemand anderes drauf, besser ist es aber, wenn du die Aufgabe besser und detaillierter beschreibst.

      Ich habs inzwischen anders gelöst. Der Vollständigkeit halber:

      Ich wollte im Ergebnis sehen, aus welcher Tabelle die ID stammt.

      L.

      1. Hallo

        Ich habs inzwischen anders gelöst. Der Vollständigkeit halber:

        Ich wollte im Ergebnis sehen, aus welcher Tabelle die ID stammt.

        SELECT 'tabelle 1', ID AS tabname FROM tabelle1 WHERE ...
        UNION
        SELECT 'tabelle 2', ID AS tabname FROM tabelle2 WHERE ...
        

        Du kannst, wie in jedem anderen Select auch, Werte händisch angeben.

        Tschö, Auge

        --
        Wenn man ausreichende Vorsichtsmaßnahmen trifft, muss man keine Vorsichtsmaßnahmen mehr treffen.
        Toller Dampf voraus von Terry Pratchett
        1. SELECT 'tabelle 1', ID AS tabname FROM tabelle1 WHERE ...
          UNION
          SELECT 'tabelle 2', ID AS tabname FROM tabelle2 WHERE ...
          

          Du kannst, wie in jedem anderen Select auch, Werte händisch angeben.

          Cool zu wissen. Danke, Auge.

          L.

          1. Hallo

            SELECT 'tabelle 1', ID AS tabname FROM tabelle1 WHERE ...
            UNION
            SELECT 'tabelle 2', ID AS tabname FROM tabelle2 WHERE ...
            

            Du kannst, wie in jedem anderen Select auch, Werte händisch angeben.

            Cool zu wissen. Danke, Auge.

            Ja, bis auf den Umstand, dass mir die Reihenfolge der Felder durcheinander gekommen ist.

            SELECT 'tabelle 1' AS tabname, ID FROM tabelle1 WHERE ...
            UNION
            SELECT 'tabelle 2' AS tabname, ID FROM tabelle2 WHERE ...
            

            So herum ist's richtig.

            Tschö, Auge

            --
            Wenn man ausreichende Vorsichtsmaßnahmen trifft, muss man keine Vorsichtsmaßnahmen mehr treffen.
            Toller Dampf voraus von Terry Pratchett