Pregunta

Tengo una tabla que incluye un nombre grupo de alumnos, tiempo de la lección, como nombres de los días de programación. Estoy usando C # con MySQL y quiero encontrar qué lección es cuando se pulse el botón de la tabla de usuario.

Me lo puede encontrar introduciendo el valor exacto como en la tabla, por ejemplo, 08:30 o 10:25. Pero quiero hacer que conseguir hora del sistema y comprobar que es 8:30-veinticinco después de las diez o 10:25 y 12:30. Entonces puedo decir que es la primera o la segunda lección.

También he tabla incluye la columna Table_Time tiene 5 disco como 08:20, 10:25, 12:20 así sucesivamente. Podría utilizar como:

select Lesson_Time 
from mydb.clock 
where Lesson_Time between (current time)-30 AND (current time)+30  

o puedo usar entre el operador entre dos columnas (como la creación de Lesson_Time_Start y Lesson_Time_End) y comparar el tiempo actual como Lesson_Start_Time < current time < Lesson_End_Time?

EDIT: Más precisamente, el problema es cómo puedo comprobar la hora actual es la que el registro

Tengo tabla como

Time_ID  | Lesson_Time 
    1       08:30
    2       10:25
    3       12:20
    4       14:15
    5       16:10

Y Al pulsar alguna tecla Quiero comprobar que la hora actual cuando el botón Presioné es equel a la que TIME_ID Porejemplo botón presioné a las 09:15 y se debe seleccionar registro 1th record , if I pressed button at 12:00 it must select 2th.

¿Fue útil?

Solución

Me gustaría probar algo como esto.

select
    Time_ID,
    Lesson_Time
from
    mydb.clock
where
    Lesson_Time <= TIME(NOW())
order by
    Lesson_Time DESC
limit 0, 1

La consulta se limita a los registros de tiempo lección antes de la hora actual ordenado descendiendo por el tiempo y sólo devuelve el primer registro, que debe ser el registro que desea. (Tenga en cuenta, sin embargo, que la medianoche puede complicar las cosas.)

Otros consejos

No estoy del todo seguro de lo que quiere hacer, pero creo que busca DATE_ADD y DATE_SUB :

SELECT Lesson_Time from mydb.clock
 WHERE Lesson_Time between DATE_SUB(NOW(), INTERVAL 30 MINUTE) AND 
                           DATE_ADD(NOW(), INTERVAL 30 MINUTE);

proporcionado Lesson_Time es un campo DATETIME adecuada, esto debería funcionar.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top