Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Consulta diferencia de fechas y estados

Estas en el tema de Consulta diferencia de fechas y estados en el foro de Mysql en Foros del Web. Buenos días y Felices Fiestas, Feliz y Próspero Año 2014 a todos! Estoy tratando de hacer una consulta en la que me muestre todos los ...
  #1 (permalink)  
Antiguo 01/01/2014, 20:13
 
Fecha de Ingreso: agosto-2008
Ubicación: Canarias, España - París, Francia
Mensajes: 105
Antigüedad: 16 años, 3 meses
Puntos: 3
Consulta diferencia de fechas y estados

Buenos días y Felices Fiestas, Feliz y Próspero Año 2014 a todos!

Estoy tratando de hacer una consulta en la que me muestre todos los artículos cuya FECHAVENTA sea inferior a 30 días o que FECHAVENTA esté a cero.
Esto me funciona, pero se me presenta el problema de artículos vendidos y que no tengan FECHAVENTA, pero fueron vendidos hace más de 90 días (antes no existía el campo fecha venta). Puedo hacerlo así?

SELECT * FROM `vehiculos` WHERE fechaventa ='0000-00-00' or DATEDIFF(CURDATE(),fechaventa)<=30
<!-- Hasta aquí funciona bien -->
AND
if(estado = 'vendido', DATEDIFF(CURDATE(),fechaalta)<90)

Como dije, las primeras 2 líneas funcionan (hasta el <= 30) pero el AND y siguiente me da error. Como se haría esa consulta?

Muchas gracias a todos.
  #2 (permalink)  
Antiguo 02/01/2014, 04:39
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 8 meses
Puntos: 574
Respuesta: Consulta diferencia de fechas y estados

Código MySQL:
Ver original
  1. SELECT * FROM `vehiculos` WHERE fechaventa ='0000-00-00' or DATEDIFF(CURDATE(),fechaventa)<=30
  2. <!-- Hasta aquí funciona bien -->
  3. if(estado = 'vendido' AND DATEDIFF(CURDATE(),fechaalta)<90,true,false)=true

Creo....
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.

Etiquetas: datediff
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 07:16.