Ver Mensaje Individual
  #1 (permalink)  
Antiguo 28/11/2008, 07:00
Avatar de scout_vlc
scout_vlc
 
Fecha de Ingreso: julio-2007
Ubicación: Valencia
Mensajes: 141
Antigüedad: 16 años, 10 meses
Puntos: 0
Fallo con intersect

Hola, quiero hacer una consulta que es:

Código PHP:
$consulta "select * from recetas where codreceta in ((select codreceta from ingred_rec".
                         
" where idingred = '$ingrediente') INTERSECT ".
                         
" (select codreceta from recetas where $donde3)) order by valoracion desc"
Cuando la ejecuto por pantalla con un echo me sale esto:
select * from recetas where codreceta in ((select codreceta from ingred_rec where idingred = '3') INTERSECT (select codreceta from recetas where login = 'anasan')) order by valoracion desc
y me dice que las filas afectadas son -1...
La copio tal cual en phpmyAdmin y me sale este error:




Como no se ve bien el texto dice:
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'INTERSECT ( select codreceta from recetas where login = 'anasan' ) ) order by va' at line 1

¿Qué puede ser?
Hago las consultas por separado y sale bien, es decir, ejectuo lo que se ve en las imagenes:
CONSULTA 1

CONSULTA 2


Con lo que la receta con codreceta=45 está en ambas consultas y tendría que mostrarla ¿no?
¿Alguien puede ayduarme???
Gracias