Hola cuando ejecuto esta consulta:
SELECT l.id_licitacion, c.nombre,
(select (CASE WHEN Count(*)>1 THEN 'Varios'
WHEN Count(*)<=1 THEN (select tf.descripcion from tipo_familia tf where tf.id_tipo_familia = lf.id_tipo_familia)
END)
FROM licitaciones_familias lf
WHERE lf.id_licitacion = l.id_licitacion)
FROM licitaciones l
INNER JOIN clientes c ON c.id_cliente = l.id_cliente
me da el siguiente error:
subquery uses ungrouped column "lf.id_tipo_familia" from outer query
y no tengo ni idea de cómo solucionarlo, a ver si me podeis echar una mano.
Muchas gracias por todo
Saludos
Fran
Re: Problema con subconstultas correlacionadas
Jue, 08/10/2009 - 09:40 — rafaelmaEsto ocurre por usar lf.id_tipo_familia en el subselect definido en WHEN...THEN...END, cuando 'lf' esta definido en el FROM posterior. Supongo que porque 'lf' no existe cuando el 'parser' interpreta tu sentencia SQL.
Supongo que podrias reescribir la consulta de esta manera:
Ya contaras
--
Rafael Martinez
Webmaster
Gracias por contestar pero
Mar, 13/10/2009 - 12:20 — AnónimoGracias por contestar pero tampoco me funciona, al final lo he resuelto de otra forma, en lugar de mostrar 'varios' muestro un array con el listado de familias.
saludos
Fran
Enviar nuevo comentario