это мой код:
<?php $date = date('d-m-y');
date_default_timezone_set("Asia/Kuala_Lumpur"); //senarai pelajar awal
include('config.php');
$sql="SELECT kedatangan.id,pelajar.nama,pelajar.tahun,kedatangan.masa FROM pelajar JOIN kedatangan ON pelajar.barcode=kedatangan.barcode WHERE masa BETWEEN '2017-01-01 06:00:00.000000' AND '2018-07-30 08:00:00.000000' ";
$result = mysql_query($sql ,$conn)or die (mysql_error()); ?>
этот код вызывает все данные с начала даты до последней даты, но независимо от временных ограничений
но я хочу вызвать данные ** только с 6 утра до 8 утра каждый день ** … я надеюсь, что кто-то поможет мне
Чтобы выбрать записи между заданным временем независимо от дат, БРОСАТЬ функция в mysql может сделать помощь. Следующий запрос должен работать в этом случае.
SELECT kedatangan.id, pelajar.nama, pelajar.tahun, kedatangan.masa FROM pelajar JOIN kedatangan ON pelajar.barcode = kedatangan.barcode WHERE CAST(masa AS time) BETWEEN '06:00:00' AND '08:00:00';
Используйте функцию DATEPART
,
Следующий запрос должен работать в этом случае
SELECT kedatangan.id, pelajar.nama, pelajar.tahun, kedatangan.masa FROM pelajar
JOIN kedatangan ON pelajar.barcode = kedatangan.barcode
WHERE DATEPART(HH,masa) BETWEEN 6 AND 18