esta es la consulta que estoy haciendo en PHP
Código PHP:
$sql="SELECT $variable1 FROM hojat ht LEFT OUTER JOIN `mercancias` AS m ON ht.`codigo` = m.`codigo` WHERE fechaingreso BETWEEN '$desde ' AND '$hasta ' ";
![triste](http://static.forosdelweb.com/fdwtheme/images/smilies/frown.png)
| ||||
Respuesta: error en consulta a la BD ejecutaste la consulta directamente desde la consola de mysql? no entiendo cual es tu problematica como que muestraun rango y despues otro?
__________________ What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me |
| ||||
Respuesta: error en consulta a la BD si la ejecute directamente en la consola mysql y el error es el siguiente, genero la consulta ejemplo del 01/09/2018 al 11/09/2018 pero los primeros resultados son los del 01/08/2018 al 11/08/2018 y después de eso muestra los datos que estaba consultando. cual podrá ser el error? |
| ||||
Respuesta: error en consulta a la BD el campo fechaingreso en que tabla esta? aqui al parecer tu query esta trayendo informacion de mas porque estas haciendo un left outer join(estas haciendo un producto cartesiano con la informacion) te recomendaria usar inner join en lugar del outer join
__________________ What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me |
| ||||
Respuesta: error en consulta a la BD el campo fechaingreso esta en la tabla hojat, cambie el left outer join por inner join pero me sigue mostrando la información de la misma forma anterior. |
| ||||
Respuesta: error en consulta a la BD y cual es el formato de fecha que tienes en tu servidor?
__________________ What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me |
| ||||
Respuesta: error en consulta a la BD Nada mas consulta la tabla hojat con el rango de fechas y ve que valores te regresa, ahora en lugar de between prueba con esto
Código MySQL:
Ver original
__________________ What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me |
| ||||
Respuesta: error en consulta a la BD entonces los datos estan mal, la columna es de tipo date?
__________________ What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me |
| ||||
Respuesta: error en consulta a la BD claro ese es el problema, no es lo mismo comparar fechas que comparar cadenas de caracteres, es por eso que no te este regresando los datos bien con el between
__________________ What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me |
| ||||
Respuesta: error en consulta a la BD podrias hacer un alter a la tabla y cambiar el tipo de dato, si los datos estan en un formato correcto entonces no habra problema. seria algo como esto:
__________________ What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me |
| ||||
Respuesta: error en consulta a la BD lo que pasa es que los datos están en formato dd-mm-aaaa, realice el cambio pero las fechas se borraron por eso te preguntaba si había alguna forma de cambiar los datos antes de realizar el cambio a date. |
| ||||
Respuesta: error en consulta a la BD como que las fechas se borraron? entonces dd-mm-aaaa no es el formato de fecha de tu servidor?
__________________ What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me |
| |||
Respuesta: error en consulta a la BD mi recomendación Crea un campo nuevo de tipo date por fejemplo fechanueva en php o en lo que suelas programar recorre todos los registros uno por uno y convierte tu fecha actual al formato yyyy-mm-dd (año - mes -dia) Una vez que se haya realizado ese paso ya podras borrar tu columna vrchar de fecha y utilizar el nuevo formato fechanueva Finalmente renombreas el fechanueva por fecha. (recuerda de trabajr en formato de base de datos, yyyy-mm-dd
__________________ Estrella 923 |
| ||||
Respuesta: error en consulta a la BD el formato de las fechas que están en el servidor son dd-mm-aaaa pero cuando pase a date el campo quedaron 0000-00-00 por suerte había realizado un respaldo antes por lo que pude restaurar la BBDD. entonces mi nueva consulta es si existe alguna secuencia sql la cual me transforme mi fecha actual que esta en dd-mm-aaaa y me la pase a aaaa-mm-dd antes de transformar el campo a date? |
| ||||
Respuesta: error en consulta a la BD como no usas campos date tendras que formatear tu consulta, recortando la cadena y acomodandola como lo necesitas, es por eso que es bueno tener desde un principio bien definidos los tipos de datos
__________________ What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me |
| ||||
Respuesta: error en consulta a la BD Cita: Muchas Gracias a todos los que me ayudaron a resolver este problema ya lo solucione gracias a la ayuda que cite con el siguiente codigo, el cual coloco por si a alguien mas le pasa lo mismo
Iniciado por estrella_de_Galicia ![]() mi recomendación Crea un campo nuevo de tipo date por fejemplo fechanueva en php o en lo que suelas programar recorre todos los registros uno por uno y convierte tu fecha actual al formato yyyy-mm-dd (año - mes -dia) Una vez que se haya realizado ese paso ya podras borrar tu columna vrchar de fecha y utilizar el nuevo formato fechanueva Finalmente renombreas el fechanueva por fecha. (recuerda de trabajr en formato de base de datos, yyyy-mm-dd Código PHP: |
| ||||
Respuesta: error en consulta a la BD Solución propuesta no aplica BBDD. Movido al foro correcto
__________________ ¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente... "El problema es la interfase silla-teclado." (Gillermo Luque) |
Etiquetas: |