Los pongo en situación:
Tengo esta tabla:
------------------------------------------------------------------------------------------------------
id (int) | todos (int) | desdehora (time) | hastahora (time)
------------------------------------------------------------------------------------------------------
quiero seleccionar los registros donde todos sea igual a 1 y la hora este entre los campos desdehora y hastahora pero que esto ultimo se haga siempre y cuando los dos ultimos campos sean diferente a '00:00:00' sino no!
como para graficarlo de alguna manera seria lago asi, nada mas que no se bien como o si se puede:
SELECT * FROM tabla WHERE todos=1
IF (desdehora <> '00:00:00' and hasta hora <> '00:00:00') and 'miHora' BETWEEN desdehora and hastahora
and id=50
Desde ya garcias!