Un usuario preguntó 👇
He intentado filtrar una tabla de base de datos con eventos y solo quiero mostrar los próximos eventos en mi sitio web. Para mí, la cláusula «dónde está» solo funciona con date = current_date () y no con date> current_date (). ¿Alguna idea de cómo solucionar este problema?
(@peterschulznl)
hace 1 año
Hola felipe
Si debe usar = o> depende del tipo de datos de las columnas de su tabla.
Para el tipo de datos use «fecha»: = Para el tipo de datos use «fecha»:>
La función current_date () devuelve la fecha como parte del día actual solamente. Esto coincide con la salida de la columna de fecha: valor actual_fecha (): valor de columna 2020-01-08: 2020-01-08 Para esto, necesita el =. Si usa> encontrará todas las fechas posteriores al 08/01/2020. Dado que esta es la fecha actual, obtendrá un conjunto vacío.
Pero current_date () no es lo mismo que la fecha de salida de la columna hora: valor current_date (): valor de la columna 2020-01-08: 2020-01-08 10:00:00 Para esto debe> usar.
¡Espero que esto ayude!
Todo lo mejor, Peter
(@philippkaiser)
hace 1 año
Hola Pedro,
Gracias por la rápida respuesta.
Si usa> obtendrá todas las fechas después del 2020-01-08. Dado que esta es la fecha actual, obtendrá un conjunto vacío.
No sé qué significa un conjunto vacío. Los eventos de mi tabla solo tienen una columna de fecha y hay fechas futuras. Si utilizo la siguiente consulta en SQL, obtengo los resultados que deseo.
SELECCIONAR * De eventos DONDE fecha> = CURRENT_DATE ();
Pero si uso date> = CURRENT_DATE () como una cláusula PLACE en su plugin, no funciona y no entiendo por qué.
Espero que sepas por qué es así.
Todo lo mejor, Philipp
(@peterschulznl)
hace 1 año
Lo siento Philipp,
No parece que te haya entendido. No estaba al tanto de las fechas futuras. En ese caso, solo las fechas futuras deberían estar en su conjunto.
No creo que sea un problema de plugins porque me funciona. ¿Puede agregar un script que contenga una tabla de creación y algunos registros?
Todo lo mejor, Peter
(@philippkaiser)
hace 1 año
Hola Pedro,
puedes obtener una exportación de mi tabla aquí.
Todo lo mejor, Philipp
(@peterschulznl)
hace 1 año
Hola Philipp,
¡Importé un script para ti y funciona! ¿Podría realmente ingresar: fecha> = CURRENT_DATE () en lugar de: datum> = CURRENT_DATE ()?
Todo lo mejor, Peter
(@dizwell)
hace 1 año
Hola Peter: Seguramente encontraría una columna «fecha» desconocida en ‘donde hay una cláusula’ «si eso fuera lo que estaba haciendo, ¿no?!
Sin embargo, estoy de acuerdo con usted: si ingresa fechas como ‘2020-01-15’, entonces WHERE MYCOLUMN> = currentdate (); Debería encontrarse.
Esta respuesta fue modificada hace 1 año por.
(@philippkaiser)
hace 1 año
Hola Pedro,
eso es raro … Escribí «datum» y aquí puedes ver una imagen de mi configuración: Enlace
Lo único que sucede es que se coloca una página en el sitio web como ves aquí: Enlace
Si no ve nada, es posible que tenga que probarlo en línea en lugar de hacerlo localmente en xampp.
Gracias por el maravilloso apoyo y buena voluntad, Philipp
(@dizwell)
hace 1 año
Hola Peter: Simplemente haz más chips. Creo una tabla simple de dos columnas usando el Diseñador de datos: COL1 = int, MYDATE = date. COL1 es la clave. Luego agregué eso a mi menú. Luego agregué tres registros:
1 2020-01-04 2 2020-01-08 (¡esta es la fecha de hoy!) 3 2020-01-15
Luego creé una entrada en el editor de datos. Lo creé sin una cláusula: cuando hago clic en ‘Publicación de prueba’, las tres filas aparecen en la ventana emergente. Luego agregué una cláusula que decía (sin las comillas) «mydate = current_date ()»: Guarde esa publicación modificada, luego Test Publication muestra 1 capa (como se esperaba). Luego edité la cláusula que decía «mydate> = current_date ()», la guardé de nuevo … y ahora Test Publication muestra cero filas, donde debería mostrar 1 fila.
Hice exactamente la misma prueba en la base de datos de backend y la prueba = = funcionó como se esperaba (es decir, devolvió la cadena ID = 3). Entonces, la lógica es sólida y MySQL funciona como se esperaba … pero puedo confirmar si crea la tabla a través del plugin, crea una entrada de editor de datos para ella y usa Data Publisher para agregar una cláusula con él, no está funcionando como se esperaba.
Incluso traté de arreglar la cláusula que contiene Trim (mydate)> = trim (current_date ()) por temor a que alguna característica de fecha extranjera fuera la culpable de la falta de coincidencia de datos … pero eso no ayudó.
De todos modos: la versión corta es: La tabla de 3 niveles en MySQL y un> = current_date () funciona como se esperaba, pero la misma tabla de 3 niveles y los mismos datos se crean a través del plugin, mientras que la cláusula proporcionada por un editor de datos, no se selecciona la serie esperada.
Esta respuesta fue modificada hace 1 año por.
(@dizwell)
hace 1 año
Si le ayuda, puede ver la tabla y la cláusula de travesuras de PLACE en:
https://absolutelybaching.com/database-test/
¿Existe alguna posibilidad de que el plugin convierta el carácter “>” en html “& gt”, lo que eliminaría la cláusula PLACE para invalidarla? Solo estoy adivinando, por supuesto …
Por cierto, las pruebas no funcionan para «<” nó “>» básicamente.
Espero que ayude. Sobre HJR
Esta respuesta fue modificada hace 1 año por.
(@peterschulznl)
hace 1 año
Hola Philipp,
Lo siento de nuevo, no leí bien … ¡Esto se aplica a Data Publisher! Estaba viendo proyectos de datos … 🤢
Esto es un error. Para almacenar un carácter> el plugin cambia a> pero no vuelve a cambiar correctamente. El carácter> reemplaza el plugin> con la cláusula que MySQL obviamente no comprende.
Lo cambié de inmediato pero no creé una nueva versión. Si desea utilizar la reparación, primero debe eliminar el plugin y luego reinstalarlo.
Ten cuidado !!! Con la configuración predeterminada, el plugin elimina todas las configuraciones de tablas y repositorios. Puede cambiar este comportamiento en la Configuración del plugin (WP Data Access> Configuración del plugin> Desinstalar). Si desmarca ambas casillas de verificación, si reinstala el plugin, todo permanecerá allí.
¡Gracias por tu ayuda Howard! 😊
Todo lo mejor para ti, Peter
¿Solucionó tu problema??
0 / 0