Kampfgummibaerlie
Datenbank-Guru
- Beiträge
- 743
Mich würde interessieren, ob es eigentlich möglich ist, einen Insert (Gegebenenfalls auch in einer Funktion) einen Join returnen zu lassen, ich habe da eher so gedacht an eine Ausgabe ala:
"Maschine mit Nummer >Vermietungen.maschinen_id< des Typs >Typen.Typ< wurde zur Mietung eingetragen!"
Dass man bei einem Insert alle beliebigen Spalten der Tabelle, in die man inserted returnen kann, ist mir bewusst, aber ich würde gerne (ohne extra Spalten und Trigger einzurichten), eben den Maschinentyp der entsprechenden maschinen_id ausgeben.
Also meine Frage:
Wenn es möglich ist, wo in meiner Insert-Abfrage müsste ich den Join ansetzen?
Um eine Vorstellung an das ganze zu geben, hier ein funktonierender Code:
Aber, ich würde gerne (klein anfangen, also am Anfang nur 1 Spalte) 1 Spalte returnen, welche mittels eines Joins erreichbar wäre.
Wobei die Spalte maschinen_typen.typ über die Tabelle Maschinen erreichbar wäre, welche 2 wiederum mit enem inner-join, glaube ich verbunden werden müssten. (?)
Wenn es nicht geht, einfach schreiben xD
"Maschine mit Nummer >Vermietungen.maschinen_id< des Typs >Typen.Typ< wurde zur Mietung eingetragen!"
Dass man bei einem Insert alle beliebigen Spalten der Tabelle, in die man inserted returnen kann, ist mir bewusst, aber ich würde gerne (ohne extra Spalten und Trigger einzurichten), eben den Maschinentyp der entsprechenden maschinen_id ausgeben.
Also meine Frage:
Wenn es möglich ist, wo in meiner Insert-Abfrage müsste ich den Join ansetzen?
Um eine Vorstellung an das ganze zu geben, hier ein funktonierender Code:
Code:
insert into vermietungen(maschinen_id, mietzeit) values ('2', '(2018-02-28 15:00, 2018-02-28 17:00)') returning maschinen_id, lower(mietzeit)::date, lower(mietzeit)::time,
upper(mietzeit)::date, upper(mietzeit)::time
Aber, ich würde gerne (klein anfangen, also am Anfang nur 1 Spalte) 1 Spalte returnen, welche mittels eines Joins erreichbar wäre.
Code:
insert into vermietungen(maschinen_id, mietzeit) values ('2', '(2018-02-28 15:00, 2018-02-28 17:00)') returning vermietungen.maschinen_id, maschinen_typen.typ, lower(vermietungen.mietzeit)::date, lower(vermietungen.mietzeit)::time,
upper(vermietungen.mietzeit)::date, upper(vermietungen.mietzeit)::time
Wobei die Spalte maschinen_typen.typ über die Tabelle Maschinen erreichbar wäre, welche 2 wiederum mit enem inner-join, glaube ich verbunden werden müssten. (?)
Wenn es nicht geht, einfach schreiben xD