2014-10-08 67 views
0

我正在試圖運行下面的SQL時的錯誤:phpMyAdmin的 - #1267 - 非法排序規則操作的組合 '<'

SELECT * FROM syshealth WHERE 'timestamp' < DATE_SUB(NOW(),INTERVAL 15 MINUTE) 

我收到以下錯誤:

#1267 - Illegal mix of collations (utf8mb4_general_ci,COERCIBLE) and (latin1_swedish_ci,NUMERIC) for operation '<' 

我有我的表和數據庫歸類設置爲utf8_unicode_ci

我已閱讀已經幾篇文章,並試圖頂端回答here,但沒有成功...

還有什麼想法?

編輯:附加信息 - 「時間戳」列的類型日期時間

+2

使用反引號來轉義列名稱,而不是引號 – 2014-10-08 17:17:07

回答

0

您需要使用`(反引號),如果你使用單'標識列,這將被視爲字符串文字。

SELECT * FROM syshealth WHERE `timestamp` < DATE_SUB(NOW(),INTERVAL 15 MINUTE) 
+0

太棒了!第一次工作。如果我在PHP中執行此操作,是否適用相同的規則? – dankellys 2014-10-08 17:34:01

+0

@dankellys,與PHP中的規則相同 – radar 2014-10-08 17:48:39

相關問題