Ресторан открывается с понедельника в 10:00 до вторника 03:00 и снова открывается во вторник в 10:00 до среды 03:00.
Например:
таблица: business_hour
id | weedDay | openDay | openTime | closeDay | closeTime
-----------------------------------------------------------
1 | Monday | Monday | 10:00:00 | Tuesday | 03:00:00
2 | Tuesday | Tuesday | 10:00:00 | Wednday | 03:00:00
Как сделать так, чтобы предложение MySQL SELECT показывало, является ли ресторан открытым или нет?
<?php
require_once "pdo/pdo.php";
try {
$stmt = $pdo->prepare("
SELECT
CASE WHEN
exists (
SELECT 1 FROM business_hour WHERE
(openday = dayname(now()) AND opentime <= time(now()))
OR
(closeday = dayname(now()) AND closetime >= time(now()))
)
THEN 'Open'
ELSE 'Closed'
END status
");
$stmt->execute();
while ($row = $stmt->fetch(PDO::FETCH_ASSOC))
{
echo $row['status'];
}
} catch( PDOException $e ) {
echo $e.'Not selected'; // error message
}
?>