Ver Mensaje Individual
  #1 (permalink)  
Antiguo 02/07/2012, 07:08
DoHITB
 
Fecha de Ingreso: abril-2012
Ubicación: 41°37′00″N, 00°37′00″E
Mensajes: 462
Antigüedad: 12 años, 1 mes
Puntos: 33
like con subquery

Buenas de nuevo y perdón por no recordar mis estudios de SQL, jeje

Tengo un pequeño problema, con un LIKE y una subquery... necesito usar un LIKE que dentro lleva una subquery; el problema está en que la subquery retorna varios valores...

Si hago el SQL con "in" en lugar de "like" me funciona, pero pierdo la ventaja de comparar parecidos...

Mi sql es algo así:

Código:
	select (campos)
	from t1, t2
	where t2.c1 = t1.c1 and
		  length(t2.c2) = 1 and
		  t2.c3 <> # and
		  t1.c2 like (select t1.c2
		               from t1, t2
					   where t2.c1 = t1.c1 and
					         length(t2.c2) = 1 and
					         t2.c3 = #) and
		 t2.c1 not in (select t2.c1
		                  from t2
		        		  where t2.c3 = #)
Los # serían los datos variables de la selección. La cosa está en que este select me devuelve una serie de datos que debería comparar por parecido (de ahí el LIKE), pero al recibir más de un registro me falla, por lo que si quiero que funcione tengo que usar un IN... lo que me quita la comparación...

Alguna sugerencia (si no recuerdo mal estas cosas se arreglaban con JOIN... pero hace tiempo que no refresco SQL...)??