Oracle, einfügen multirows von subquery mehr als eine Zeile
Ich versuche zu kopieren-Feld aus einer Tabelle zu anderen, will ich tun, iy mithilfe von einfügen mit einer Unterabfrage wie diese:
insert into sed_reporte_generico
(srg_usuario,
srg_nombres,
srg_ape_paterno,
srg_ape_materno,
srg_objetivo,
srg_peso_ob,
srg_calf_ob)
values
(
(select us.su_st_usuario, us.su_st_nombres, us.su_st_ap_paterno, us.su_st_ap_materno, ob.soc_st_descripcion, ob.soc_nr_peso,ob.soc_nr_calificacion
from sed_objetivo ob, sed_usuarios us, sed_evaluacion ev
where ob.se_evaluacion_pk = ev.se_evaluacion_pk and ev.su_colaborador_fk = us.su_usuarios_pk)
);
aber bekam ich diese Fehlermeldung:
01427. 00000 - "single-row subquery mehr als eine Zeile"
irgendeine Idee, wie sollte ich das tun?
Dank,
InformationsquelleAutor Angelo Gabriel Escudero Vía | 2012-10-05
Du musst angemeldet sein, um einen Kommentar abzugeben.
Denke, Sie haben die Wahl zwischen
und
Können Sie die WERTE und WÄHLEN Sie gemischt nur (wie bereits von einem anomyous Pferd)
wenn die select-Abfrage nur eine Spalte und eine Zeile !
Durch die Art und Weise, verwenden Sie BEITRETEN... Beitreten, um Ihre Tabellen (Verwendung von WHERE-Klauseln Tabellen verknüpfen, ist eher eine schlechte Angewohnheit) :
select
Abfrage anstelle von einem einzigen, wenn die Abfrage eine Skalare sub-queries (ich.e es gibt genau man verändert sich und eine Zeile)ok, wusste das nicht, meinen Beitrag korrigiert.
InformationsquelleAutor Raphaël Althaus