MySQL - Select anidado funciona en mysql 5 pero no en 4

 
Vista:

Select anidado funciona en mysql 5 pero no en 4

Publicado por Daniela (1 intervención) el 30/03/2007 04:09:57
Hola !!! Espero que algun alma caritativa me pueda ayudar. Resulta que estoy desarrollando un sistema en php y mysql. El sistema está online y además para hacer las pruebas uso una instalación local (en mi pc). El tema es el siguiente: en el servidor, la versión de mysql es la 4, y en mi pc tengo mysql 5. Y hay una consulta con un select anidado que estoy dando vueltas hace 2 días y no puedo lograr que funcione en el servidor (mysql 4), pero sin embargo sí funciona en mi pc, con mysql 5…

Estas son las opciones que probé:

1) SELECT s2.company_id, s2.pdr_id ,
sum( s2.bag_to - s2.bag_from + 1 ) "tot_env_rec"
FROM sent_bags s2
WHERE ( SELECT count (*)
FROM received_bags r2
WHERE r2.bag_id between s2.bag_from and s2.bag_to) <= 2
GROUP BY s2.company_id, s2.pdr_id

2) SELECT s5.company_id, s5.pdr_id ,
sum( s5.bag_to - s5.bag_from + 1 ) 'tot_env_rec'
FROM (SELECT s2.company_id, s2.pdr_id , s2.bag_from , s2.bag_to
FROM sent_bags s2, received_bags r2
WHERE r2.bag_id BETWEEN s2.bag_from AND s2.bag_to
GROUP BY s2.company_id, s2.pdr_id , s2.bag_from , s2.bag_to ) s5
GROUP BY s5.company_id, s5.pdr_id ;

3) SELECT s2.company_id, s2.pdr_id ,
sum( s2.bag_to - s2.bag_from + 1 ) 'tot_env_rec'
FROM sent_bags s2
WHERE ( SELECT count (*)
FROM received_bags r2
WHERE r2.bag_id between s2.bag_from and s2.bag_to) > 1
GROUP BY s2.company_id, s2.pdr_id ;

El error que da en mysql 4 es:

#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 'SELECT COUNT( * ) FROM received_bags r2 WHERE r2 . bag_id >=

Mil gracias por adelantado!!!
Salu2,
Daniela :-)
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Select anidado funciona en mysql 5 pero no en 4

Publicado por kain (124 intervenciones) el 30/03/2007 10:28:07
simplemente que la version 4 no lo soporta,.
no es que estes haciendo nada mal.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Tu solucion

Publicado por jorge (1 intervención) el 26/05/2007 16:02:13
hola daniela... como te va

la respuesta es simple... tu servidor debase de datos debe ser la version 4.0 o inferior.... prueba instalando la version 4.1 en adente en el servido o pruebate este preciosa.....

cuualquier cosa escribeme ...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar