Foros del Web » Programando para Internet » PHP »

Problema Select en tablas de misma estructura

Estas en el tema de Problema Select en tablas de misma estructura en el foro de PHP en Foros del Web. Buenas a todos, estoy teniendo un problema a la hora de visualizar los datos a través de una select la cual lanzo contra dos tablas ...
  #1 (permalink)  
Antiguo 05/09/2014, 04:13
 
Fecha de Ingreso: octubre-2009
Mensajes: 16
Antigüedad: 14 años, 6 meses
Puntos: 0
Problema Select en tablas de misma estructura

Buenas a todos, estoy teniendo un problema a la hora de visualizar los datos a través de una select la cual lanzo contra dos tablas que tienen exactamente la misma estructura

Esta es la select:

select * from tabla_precios a
INNER JOIN (SELECT (sum(precio) / (SELECT count(id) FROM tienda_madrid WHERE fecha between date_sub(curdate(), interval 4 day)and curdate())) as preciomedio
FROM tienda_madrid WHERE fecha BETWEEN date_sub(curdate(), interval 4 day) and curdate() ) b
ON b.preciomedio between a.minima and a.maxima;



en esta tabla tienda_madrid, me saca el precio medio.
Pero ejecutándola en otra tabla idéntica (tienda_barcelona) no me arroja nada


select * from tabla_precios a
INNER JOIN (SELECT (sum(precio) / (SELECT count(id) FROM tienda_barcelona WHERE fecha between date_sub(curdate(), interval 4 day)and curdate())) as preciomedio
FROM tienda_barcelona WHERE fecha BETWEEN date_sub(curdate(), interval 4 day) and curdate() ) b
ON b.preciomedio between a.minima and a.maxima;



llevo un rato dando vueltas y no se porqué pasa eso exactamente, ya que son 30 tablas iguales en estructura de las cuales en 26 la select me ofrece resultados y en 4 no...

A ver si a alguien le pasó alguna vez algo parecido porque estoy desesperadoooooooo


Muchas gracias de antemano.
  #2 (permalink)  
Antiguo 05/09/2014, 05:16
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: Problema Select en tablas de misma estructura

Vaya con los catalanes!!!

Código MySQL:
Ver original
  1. from tabla_precios a INNER JOIN
  2.     (SELECT (sum(precio) / (SELECT count(id)
  3.                             FROM tienda_madrid
  4.                             WHERE fecha between date_sub(curdate(), interval 4 day) and curdate())) as preciomedio
  5.     FROM tienda_madrid
  6.     and curdate()) b
  7. ON b.preciomedio between a.minima and a.maxima;
  8.  
  9.  
  10. from tabla_precios a INNER JOIN
  11.     (SELECT (sum(precio) / (SELECT count(id)
  12.                                 FROM tienda_barcelona
  13.                                 WHERE fecha between date_sub(curdate(), interval 4 day)and curdate())) as preciomedio
  14.     FROM tienda_barcelona
  15. ON b.preciomedio between a.minima and a.maxima;

No veo diferencias... has descartado que el problema este en los datos, es decir que Barcelona tenga datos que cumplan las condiciones.

Por otro lado conoces las funciones de agregado AVG() quizas te serviria para simplificar la consulta, aqui el manual.

Código MySQL:
Ver original
  1. SELECT AVG(precio) preciomedio
  2.     FROM tienda_barcelona

... siempre que haya interpretado tu query correctamente.
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.
  #3 (permalink)  
Antiguo 05/09/2014, 05:57
 
Fecha de Ingreso: octubre-2009
Mensajes: 16
Antigüedad: 14 años, 6 meses
Puntos: 0
Respuesta: Problema Select en tablas de misma estructura

quimfv muchas gracias por la respuesta.

Antes de nada agradecerte lo de AVG, ya que no la conocía. La he usado y funciona genial.



Por otra parte he descubierto que si cambio el intervalo de tiempo si me funciona en las tablas que no me funcionaba, pero deja de funcionar en otras

Es decir, en la select de ejemplo tengo puesto en los ultimos 4 días. Bien así me funciona en 26 tablas de 30.

He cambiado el rango, a últimos 7 días, y ahora me funciona en las tablas donde no funcionaba antes pero en otras tablas que antes salían ahora no. 27 de 30 tablas.

Los datos son del mismo tipo quimfv ya que todas fueron clonadas de una original y el script que alimenta a todas las tablas es un bucle que va una a una, luego no hay ninguna diferencia.


Esto es muy raro, jamás he visto algo así.
  #4 (permalink)  
Antiguo 05/09/2014, 06:06
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: Problema Select en tablas de misma estructura

Ampliando el margen el precio medio cambia, luego es posible que el nuevo precio medio no caiga dentro de

b.preciomedio between a.minima and a.maxima;

ahí tienes la explicación.

Es decir unas tablas arrojan un precio medio entre a.minima y a.maxima con un periodo de 4 días, otras no. Lo mismo con el margen de 7 días. Ahora bien hay o puede haber un grupo de tablas que obtengan un promedio dentro del margen en los dos casos o en ninguno.

No sufras no se ha catalanizado nada!!!
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.
  #5 (permalink)  
Antiguo 05/09/2014, 09:22
 
Fecha de Ingreso: octubre-2009
Mensajes: 16
Antigüedad: 14 años, 6 meses
Puntos: 0
Respuesta: Problema Select en tablas de misma estructura

quimfv no te preocupes no tengo nada contra cataluña, es más puede que pronto trabaje allí....

Con la explicación de tu último comentario me he dado cuenta de lo que comentas.

Había unos pequeños saltos de decimales entre los valores minima y maxima , no he caído en ello pero tu si asi que este aplauso va por ti :apla uso:

Muchas gracias !!

Etiquetas: estructura, fecha, select, tabla, tablas
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:13.