我們已經運行完全在MSSQL,但未能在MySQL運行下面的查詢:MySQL的轉換爲datetime語法錯誤:意外IDENT_QUOTED
select CONVERT(datetime, dateVal) as DateOccurred, itemID, COUNT(*) as Hits from (
select itemID, CONVERT(datetime, DateClickUTC) as dateVal
from tb_items
where DateClickUTC >= '2008-06-03 22:00:28.893' and DateClickUTC <= '2013-06-03 22:00:28.893'
group by CONVERT(datetime, DateClickUTC), UserID, itemID) as a
group by a.dateVal, itemID
我們從MySQL得到的錯誤說:
syntax error, unexpected IDENT_QUOTED
第一行上的dateVal變量發生此錯誤:「選擇CONVERT(日期時間,dateVal)」。
如果我們刪除第一個CONVERT,那麼錯誤將轉到下一行的下一個CONVERT。所以,顯然,我們的日期時間轉換似乎存在錯誤。不知道我們做錯了什麼,有什麼想法嗎?謝謝大家。
什麼是'DateClickUTC'字段的數據類型?看看你的'WHERE'子句,它似乎已經是一個日期時間,所以也許不需要轉換? – sgeddes
http://dev.mysql.com/doc/refman/5.5/en/cast-functions.html#function_convert –
在MySQL中,CONVERT函數將目標數據類型作爲其第二個參數,而不是第一個參數。 –