MySQL - subquery

 
Vista:

subquery

Publicado por cheo04 (1 intervención) el 29/10/2010 20:11:12
tengo 3 tablas TICKET2,TICKET_VENTA, Y COBRADOR_TICKET donde guardo las caracteristicas de mi ticket, en la primera, luego en ticket_venta almaceno la forma de pago de ese tiket y en la 3era un cobrador asignado para ese ticket, ahora bien monte mi sentencia sql para consultar los ticket q no tengan cobrador asignado de la siguiente manera:
[COLOR="DarkRed"]select M.clave_ticket,M.nro1,M.nro2,M.signo,M.color,M.zona as nombre from ticket2 M, ticket_venta EST where M.clave_ticket= EST.clave_ticket and M.zona='$zona' and EST.forma_pago='2' and EST.clave_ticket NOT IN (select clave_ticket from cobrador_ticket[/COLOR] y en mi localhost funciona perfectamente ahora cuando lo monto al servidos el subquery no lo reconoce pq no me arroja registros, teniendo como, es deicr el resultado es vacio, de que manera esta sentencia sql la puedo scribir usando inner join???, de antemano agradecido por la atencion prestada.
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:subquery

Publicado por Gonzalo GC (339 intervenciones) el 01/11/2010 02:43:29
Hay muchas razones por las cuales puede darse que la sentencia no se ejecute:
1) Si el servidor es Linux/Unix, es sensible a mayúsculas/minúsculas, por lo que si, por ejemplo, el campo ticket2.clave se llama CLAVE, para MySQL es distinto, y no lo está reconociendo. De hecho, el uso de ciertas funciones propias de MySQL en los servidores basados en Linux debe ser escribiendo los nombres en minúsculas, porque en mayúsculas no los reconoce.
2) Puede darse que la conexión no esté activa por un error de parámetros. Revisa eso como primer paso.
3) Si hay algún bug en la versión de MySQL que se usa en el hosting, es mejor que captures la salida del mysql_error(), para verificar cuál es el error.
4) Usa la interfase que le hosting te provea y prueba la sentencia manualmente, poniendo valores reales en `forma_pago` y `zona`. Si hay un error de lógica o sintaxis, saltará allí, en caso contrario, el error está en el PHP.
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