我試圖執行SQL SELECT查詢以獲取城市內的所有商店,並且還有一個字段以通知商店是否在工作時間內。SQL SELECT根據工作時間獲取公司狀態
這是SQL我到目前爲止:
$day = date('w');
$hour = date('H:i:s');
SELECT a.id, a.rating, a.name, a.image, b.cityName
(
SELECT 1 FROM tbStore a, workingHour b
WHERE a.id = b.id_store
AND b.weekDay = '$day'
AND b.hourOpen <= '$hour'
AND b.hourClose >= '$hour')
) as 'open'
FROM tbStore a, tbCity b
WHERE b.url = '$url'
AND a.id_city = b.id
ORDER BY open
我正在檢查該值的方式是一個布爾值,所以「打開」字段必須是0(關閉)或1(開)。
這是一種工作......但問題是,如果只有一家商店在工作時間內,所有其他商店也將「開放」,而不僅僅是特定的商店。
我還看到了一些人們使用CASE而不是另一個select的sql語句,因此只要最終結果是正確的,就可以使用任何其他類型的代碼。
我也不得不重命名錶的信。因爲城市表是'b',我沒有'workingHourb',而是'workingHourc'。但現在它正在工作!謝謝 – celsomtrindade