這是一個面試問題: 給定一個數據庫(mysql或同等學歷),每個記錄都有列'開始時間'和'結束時間' 我被要求獲取記錄當前系統時間位於開始時間和結束時間之間。但開始和結束時間是時間戳(YYYY-MM-DD HH:MM:SS)。所以我只能尋找那些時間部分(HH:MM:SS)落在範圍內的人(顯然是同一天不會重複:))。當前時間的讀取記錄落在一個範圍內
回答
是否這樣?
SELECT *
FROM table
WHERE CURRENT_TIMESTAMP BETWEEN start_time and end_time
沒有問什麼。他只關心時間戳的時間部分。日期部分不相關,應該剝離/標準化。 –
我只想要時間部分,但開始時間就像mysql中的日期時間格式 – username
這個問題是高度數據庫引擎的依賴。幾乎每個數據庫都有自己的功能。在面試中說mysql or equivalent
問題與詢問你是否知道那些特定的mysql函數大致相同......順便說一句,主要數據庫最不像標準實際定義的函數,部分原因是因爲mysql的使用歷史unix時間。 MySQL就像數據庫的VB6一樣,這個問題強烈表明面試官要麼不知道這一點,要麼厭倦了採訪那些沒有意識到這一點的開發人員。
完全標準的SQL參考需要收費下載,但我沒有找到你的SQL-92標準的日期和時間數據類型和操作在這裏參考:
SELECT *
FROM MyTable T
WHERE TIME_TO_SEC(CURRENT_TIMESTAMP) BETWEEN TIME_TO_SEC(T.start_time)
AND TIME_TO_SEC(T.end_time)
你去@Curt。 Goofiness-1。 –
做time_to_sec採取日期時間格式並轉換爲時間或secs? – username
- 1. 當前時間在範圍內
- 2. 如何檢查當前時間是否落在特定時間範圍內?
- 3. 確定當前時間是否在一組時間範圍內
- 4. 查找當前時間是否在一個範圍內
- 5. 在Laravel的特定時間範圍內獲取記錄
- 6. 檢查當前時間是否落在C#中不同日期的範圍內
- 7. 當時間落在時間範圍之間時,返回True?
- 8. SQL查詢 - 僅當值落在「最後n條記錄」範圍內時才獲取行(特定記錄)
- 9. 獲取特定時間範圍內的數據庫記錄
- 10. 查找的時間範圍內給出的當前時間
- 11. 檢查當前時間定義的時間範圍內對UNIX
- 12. MySQL:在一個時間範圍內獲取結果,但不在另一個時間範圍內
- 13. 使用jQuery檢查當前時間是否落入時間範圍(24小時)
- 14. 在一個範圍內驗證時間
- 15. 選擇在對方某個時間範圍內加蓋時間戳的記錄
- 16. 查找一組可能的時間是否落在另一個範圍內。
- 17. 日期時間列落在兩個時間範圍之間
- 18. 獲取當前地圖範圍內的標記/層的傳單
- 19. Rails 3.1:查詢Postgres在時間範圍內的記錄
- 20. 如何在pandas的時間戳範圍內讀取CSV值?
- 21. 在日期時間範圍內選擇記錄
- 22. PHP檢查時間範圍是否在一個時間範圍內
- 23. 在另一個時間範圍內返回數據子集時間範圍?
- 24. 如何獲得在一個時間範圍內的每月的第一個和最後一個記錄在sql
- 25. 在當前選擇範圍內選擇一個隨機範圍的曲線
- 26. 指定的日期/時間範圍內的當前日期PHP
- 27. 如果不在日期範圍內打印日期範圍和最後一條記錄之間的記錄
- 28. 如何在t-sql的時間範圍內採取更長的時間範圍
- 29. 檢查時間範圍是否在另一個時間範圍
- 30. 在sql日期範圍內使用時無法獲取記錄
我想這個面試問題正在測試你的Google能力嗎?這樣的問題只會導致查詢爲正在使用的_database服務器查找適當的日期/時間函數_而實際上並不是被採訪者的任何功能。如果可以的話,我會低估實際的面試問題。 –