| |||
consulta que traiga registros con fecha mayor a 5 dias a la fecha actual Hola como seria una consulta sql,. donde busque registros que tenga una campo de la fecha mayor a 5, seria como agregarle un condicional, no ? este me trae la diferencia entre 2 fechas timestampdiff pero el condicional tambien lo trae? |
| |||
Respuesta: consulta que traiga registros con fecha mayor a 5 dias a la fecha actual asi lo hariaaa |
| ||||
Respuesta: consulta que traiga registros con fecha mayor a 5 dias a la fecha actual TE sugiero que uses una escritura más ortodoxa de las funciones. Podrían fallarte y no sabrías por qué. Por otro lado, si lo que necesitas es aquellos registros que en un campo tengan fechas posteriores a cinco días adelante, eso es más sencillo. Suponiendo que tu tabla tiene una columna para fecha, llamada "FECHA"
Código MySQL:
Ver original Suponiendo que es un datetime:
Código MySQL:
Ver original La consulta que propusiste no te va a funcionar jamás porque estás intentando validar en el WHERE invocando el alias que se crea en el SELECT, y eso no se permite en ningún DBMS. Para poder validar "DIAS" en el WHERE deberías transformar toda la consulta en una subconsulta y con eso se genera una tabla derivada, donde SI puedes usar los alias internos como nombres de columna.
__________________ ¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente... "El problema es la interfase silla-teclado." (Gillermo Luque) |
| |||
Respuesta: consulta que traiga registros con fecha mayor a 5 dias a la fecha actual bueno mira tengo una consulta donde devuelve, 4 registros 2 pertenecen a un mismo id, y 2 son de distintos, lo que quiero es que me traiga 3 registros osea los que son del mismo id los junte, pero esos 2 que se juntan que traiga solo el mas reciente... pense algo como para estos registros:: id / date 1-- 2015-03-26 2-- 2015-11-27 1-- 2014-11-13 3-- 2014-07-07 osea en los registros que tenga el usuario 1, que solo me traiga el mas reciente el de la fecha 2015-03-26, ademas de los otros registros de los otros usuario Última edición por vani18; 30/11/2015 a las 11:18 |
| ||||
Respuesta: consulta que traiga registros con fecha mayor a 5 dias a la fecha actual Eso es más fácil, todavía...
Código MySQL:
Ver original ¿Has estudiado algún tutorial o leido un manual? Pregunto porque estas consultas son muy simples, bastante basicas, y a mi entender los ejemplos de los tutoirales te alcanzarían para entender cómo escribirlas. Por otro lado, te recomiendo NUNCA usar palabras simples en inglés para los nombres de las columnas, porque puedes chocarte con palabras reservadas y eso generaría errores de sintaxis de dificil detección. Lo menciono por el ultimo ejemplo, donde usas "DATE" para mencionar el nombre de la columna. Es una palabra reservada. Posdata: Esto es simple basura: No tiene ningún efecto. La comparación debe hacerse CONTRA UN CAMPO DE LA TABLA, y no contra el resultado de la función NOW(). La condición, escrita de esa forma no tiene ningún sentido.
__________________ ¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente... "El problema es la interfase silla-teclado." (Gillermo Luque) |
| |||
Respuesta: consulta que traiga registros con fecha mayor a 5 dias a la fecha actual ah pero yo decia la fecha maxima de cada registro de un usuario distinto, en el caso de que haiga mas de uno, no el maximo de todos.... |
| ||||
Respuesta: consulta que traiga registros con fecha mayor a 5 dias a la fecha actual Cita: NO ES DE USO HABITUAL Voy a suponer que tu no lo usas habitualmente... Porque en realidad es una de las funciones de agrupación más comunes en todos los SP que conozco, de todas las bases que he manejado y manejo, junto con MIN(), SUM(), COUNT() y AVG()...
__________________ ¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente... "El problema es la interfase silla-teclado." (Gillermo Luque) |
| |||
Respuesta: consulta que traiga registros con fecha mayor a 5 dias a la fecha actual osea al agregar MAX toma todos, y devuelve un solo registro, yo necesitaria un MAX pero con un GROUP_BY osea el maximo de cada usuario, en los registros de ejemplo que puse el usuario 1 devolvia 2 registros, yo quiero que me traiga del usuario 1 la fecha mas reciente |
| ||||
Respuesta: consulta que traiga registros con fecha mayor a 5 dias a la fecha actual Cita: Pues simplemente le pones la condición necesaria, lo mismo que antes...
Código MySQL:
Ver original En serio, estas son cosas muy básicas. Los ejemplos de cualquier tutorial deberían alcanzarte para entender cómo se usa tanto el MAX() como el GROUP BY.
__________________ ¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente... "El problema es la interfase silla-teclado." (Gillermo Luque) |
| |||
Respuesta: consulta que traiga registros con fecha mayor a 5 dias a la fecha actual no quiero que me agrupe los id(id_usuario),y de ahi me los ordene a los id, quiero que agrupe por usuario pero que me deje solo la fecha mayor (date) de cada usuario |
| ||||
Respuesta: consulta que traiga registros con fecha mayor a 5 dias a la fecha actual Pues eso es lo que está haciendo esa consulta... - El GROUP BY aplciado a id_customer hace que sólo devuelva un único registro por cada id_customer. - El MAX() sobre la fecha, devuelve sólo la mayor fecha relacionada con el customer_id a quien esa fecha pertenece. En consecuencia, la query sin filtrar el id_customer, devolvería esto: Cita: Y filtrando por id_customer = 1, devovlería esto:1-- 2015-03-26 2-- 2015-11-27 Cita: que es exactamente lo que quieres:1-- 2015-03-26 Cita: Ahora bien, en tu primer post pedías esto:osea en los registros que tenga el usuario 1, que solo me traiga el mas reciente el de la fecha 2015-03-26, ademas de los otros registros de los otros usuario Cita: en base a eso yo supuse que lo que querías era que la fecha de la tabla fuese posterior al dia actual. Pero parece que so que pusiste alli simplemente no tenía ninguna utilidad en la consulta. No sé para qué lo pedías nipara qué se supone que lo mpusiste en tu query, pero como te dije, no tenia ni sentido ni utilidad.donde busque registros que tenga una campo de la fecha mayor a 5 Así pues, eliminemos esa condición sin sentido, y tendrás lo que quieres:
__________________ ¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente... "El problema es la interfase silla-teclado." (Gillermo Luque) |
| ||||
Respuesta: consulta que traiga registros con fecha mayor a 5 dias a la fecha actual Una ovacion de pie a gnzsoloyo por la paciencia demostrada ;)
__________________ What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me |
Etiquetas: |