這是我的select語句。它有什麼作用?爲沒有找到任何內容的select語句定義返回參數
- 檢查是否有數據庫中已有的約會在指定日期的
- 檢查,如果用戶在特定時間的工作。
With mysql_num_rows($result)
我檢查是否有任何行。如果返回0,則可以添加約會,如果返回其他內容(數據庫中已有約會),則會阻止該約會。
該聲明適用於第1點。如果已有約會,則返回1或更多。但是,當選定日期超出用戶的工作小時範圍時,它也返回0.
問題:我可以在聲明中添加什麼以獲取返回的行(mysql_num_rows
返回1或更多),何時用戶在該特定時間不工作?
工作小時範圍示例:08:00:00 to 17:00:00
。
select *
from ios_appointments a join ios_workinghours h using(workerid_fk)
where workerid_fk = 1
AND h.start <= '19:57:20' AND h.end >= '20:57:20'
AND (
a.start BETWEEN '2012-12-24 19:57:20' AND '2012-12-24 20:57:20'
OR a.end BETWEEN '2012-12-24 19:57:20' AND '2012-12-24 20:57:20'
OR (a.start < '2012-12-24 19:57:20' AND a.end > '2012-12-24 20:57:20')
)
使用'case'來驗證是否返回任意數量的行。 – bonCodigo
一段時間以來,Mysql一直支持[存儲過程](http://dev.mysql.com/doc/refman/5.0/en/stored-routines.html)。 – Joe
爲什麼這個標記爲pl/sql? –