Duda sobre consulta en Oracle
Publicado por danietepa (1 intervención) el 17/05/2017 20:21:32
Buenas, tengo una duda, creo que no es complicada de resolver pero no doy con la tecla:
Buenas,
Estoy con una consulta y seguramente sea alguna tontería pero no doy con la tecla:
El problema es con la consulta del select:
(select tx_value from cmdb_value where nu_fkci in (select id_ci from cmdb_ci c where nu_fknameci=9)
and nu_fkdefattributenameci=70) ELEMENTO
que me dice que la subconsulta devuelve más de un elemento.
Se os ocurre alguna forma de solucionarlo rápidamente ?
Gracias.
Buenas,
Estoy con una consulta y seguramente sea alguna tontería pero no doy con la tecla:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
SELECT
cv2.tx_value SERVICIO_NOMBRE,
cv3.tx_value SERVICIO_DESCRIPCION,
(select tx_value from cmdb_value where nu_fkci in (select id_ci from cmdb_ci c where nu_fknameci=9 and c.id_ci = c1.id_ci)
and nu_fkdefattributenameci=68) ATTR_NOMBRE_SERVICIO,
(select tx_value from cmdb_value where nu_fkci in (select id_ci from cmdb_ci c where nu_fknameci=9)
and nu_fkdefattributenameci=70) ELEMENTO
FROM
cmdb_ci c1
left outer join cmdb_relationinstance ri on c1.id_ci = ri.nu_fkciend and ri.NU_FKRELATION = 6
and ri.FH_DROPDATE is null
left outer join cmdb_value cv on ri.NU_FKCIORIGIN = cv.NU_FKCI
left outer join CMDB_DEFATTRIBUTENAMECI da on cv.nu_fkdefattributenameci = da.id_defattributenameci
left outer join cmdb_value cv2 on ri.NU_FKCIORIGIN = cv2.NU_FKCI
left outer join CMDB_DEFATTRIBUTENAMECI da2 on cv2.nu_fkdefattributenameci = da2.id_defattributenameci
left outer join cmdb_value cv3 on ri.NU_FKCIORIGIN = cv3.NU_FKCI
left outer join CMDB_DEFATTRIBUTENAMECI da3 on cv3.nu_fkdefattributenameci = da3.id_defattributenameci
left outer join cmdb_value cv4 on ri.NU_FKCIORIGIN = cv4.NU_FKCI
left outer join CMDB_DEFATTRIBUTENAMECI da4 on cv4.nu_fkdefattributenameci = da4.id_defattributenameci
--left outer join CMDB_DEFATTRIBUTE DA ON DA.ID_DEFATTRIBUTE=da5.NU_FKDEFATTRIBUTE
where c1.nu_fknameci=9
and (da.nu_fkdefattribute =1 or da.nu_fkdefattribute is null)
and (da2.nu_fkdefattribute =2 or da2.nu_fkdefattribute is null)
and (da3.nu_fkdefattribute =3 or da3.nu_fkdefattribute is null)
and (da4.nu_fkdefattribute =81 or da4.nu_fkdefattribute is null)
--and (da5.nu_fkdefattribute=90 or da5.nu_fkdefattribute is null)
order by 1;
El problema es con la consulta del select:
(select tx_value from cmdb_value where nu_fkci in (select id_ci from cmdb_ci c where nu_fknameci=9)
and nu_fkdefattributenameci=70) ELEMENTO
que me dice que la subconsulta devuelve más de un elemento.
Se os ocurre alguna forma de solucionarlo rápidamente ?
Gracias.
Valora esta pregunta


0