2017-04-14 49 views
1

說我有:如何選擇在另一行之前插入的行,時間戳?

-------------------------------------- 
| Item | value | TimeStamp   | 
-------------------------------------- 
| Apple | Red | 2013-04-15 09:34:44 | 
| Orange | Orange| 2014-04-15 09:34:44 | 
| Banana | Yellow| 2015-04-15 09:34:44 | 
| Fruit | Mix | 2016-04-15 09:34:44 | 
| Malon | Red | 2017-04-15 09:34:44 | 
---------------------------------------- 

問:選擇只有一行特定的時間戳

我試過前插入:

SELECT * 
    FROM table 
WHERE TimeStamp < '2015-04-15 09:34:44' 
LIMIT 1 
    AND ITEM NOT NULL 

我想選擇該行只是行在日期2015-04-15 09:34:44之前插入,即2014-04-15 09:34:44。使用上面的查詢當我使用它時,選擇了在日期2015-04-15 09:34:44之前插入的所有行,並且試圖將其限制爲1,其中輸出結果爲最老的一個爲2013-04-15 09:34:44

+0

'與項目不NULL' - 這需要是WHERE子句。你需要一個ORDER BY子句。 –

回答

2

試試這個:

SELECT * 
FROM `table` 
WHERE `TimeStamp` < '2015-04-15 09:34:44' AND NOT `ITEM` IS NULL 
ORDER BY `TimeStamp` DESC 
LIMIT 1 
+0

它說,意外的錯誤:意外的'NULL'(空)查詢有什麼問題? –

+0

我已經更新了答案 –

相關問題