简体   繁体   English

选择时间小于14:00:00且大于06:00:00的日期

[英]Select dates with a time of less than 14:00:00 and higher than 06:00:00

I'm trying to select all records from date 2018-10-01 to date 2018-10-09 . 我试图选择从日期2018-10-01到日期2018-10-09所有记录。 I would shorten the number of results over time over 06:00:00 and less then 14:00:00. 我会随着时间的推移在06:00:00到14:00:00之间缩短结果数。

I did the following: 我做了以下工作:

$radno_vr = ' 14:00:00';
    $pocetak_smjene = ' 06:00:00';
    $od_datuma_tabl = DateTime::createFromFormat('Y-m-d', $od_datuma)->format('Y-m-d' . $pocetak_smjene); 
    $do_datuma_tabl = DateTime::createFromFormat('Y-m-d', $do_datuma)->format('Y-m-d' . $radno_vr); 

      $trazi_podatke = "SELECT * FROM podaci_kotl WHERE sifra_objekta = '$sifra_objekta_trazi' AND datum > '$od_datuma_tabl' AND datum < '$do_datuma_tabl' ... ";

But It works fine, the date over takes all the results longer than 06:00:00 to 14:00:00 but from the last selected date. 但是它可以正常工作,该日期超过了所有结果,但从最后选择的日期开始,这些结果的时间超过了06:00:00至14:00:00。 I'm trying to make a selection from every day but only if there is a record between 06:00:00 and 14:00:00.. Any suggestions? 每天都在尝试选择,但前提是在06:00:00和14:00:00之间有记录。有什么建议吗?

You need to filter on time. 您需要按时过滤。

https://dev.mysql.com/doc/refman/5.7/en/time.html https://dev.mysql.com/doc/refman/5.7/zh-CN/time.html

[...] AND TIME(datum) > TIME('$od_datuma_tabl') AND TIME(datum) < TIME('$do_datuma_tabl')

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM