Hier werden die Unterschiede zwischen zwei Versionen gezeigt.
| Both sides previous revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
|
insertintoselect [2015/12/19 15:56] 127.0.0.1 Externe Bearbeitung |
insertintoselect [2017/10/18 00:00] (aktuell) |
||
|---|---|---|---|
| Zeile 6: | Zeile 6: | ||
| Alle Spalten sollen in den neuen Datensatz eingefügt werden (Datensatz kopieren): | Alle Spalten sollen in den neuen Datensatz eingefügt werden (Datensatz kopieren): | ||
| - | + | <code sql> | |
| - | INSERT INTO neighborhood | + | INSERT INTO user SELECT * FROM user WHERE id = 314 |
| - | SELECT * FROM neighborhood WHERE user_1 = 314 AND user_2 = 109 | + | </code> |
| //Beispiel 2:// | //Beispiel 2:// | ||
| Zwei von drei Spalten der Tabelle "neighborhood" sollen mit Inhalten aus der Tabelle "users" gefüllt werden: | Zwei von drei Spalten der Tabelle "neighborhood" sollen mit Inhalten aus der Tabelle "users" gefüllt werden: | ||
| + | <code sql> | ||
| INSERT INTO neighborhood | INSERT INTO neighborhood | ||
| SELECT :id, id, distance | SELECT :id, id, distance | ||
| Zeile 20: | Zeile 19: | ||
| users.basis_1 ) as distance from users WHERE lastlogin + interval '7 days' > now() ) as users | users.basis_1 ) as distance from users WHERE lastlogin + interval '7 days' > now() ) as users | ||
| WHERE distance > 0 ORDER BY distance LIMIT 500"; | WHERE distance > 0 ORDER BY distance LIMIT 500"; | ||
| + | </code> | ||
| * Spalte :id ist ein binding Parameter, der, genau wie :Basis_1, beim Aufruf an SQL übergeben wird | * Spalte :id ist ein binding Parameter, der, genau wie :Basis_1, beim Aufruf an SQL übergeben wird | ||
| * Spalte id wird im Unter-Select ermittelt | * Spalte id wird im Unter-Select ermittelt | ||
| * Spalte distance wird ebenfalls im Unter-SELECT ermittelt | * Spalte distance wird ebenfalls im Unter-SELECT ermittelt | ||