我有這個完美運行的MySQL查詢,直到我將POW函數添加到它。我不明白爲什麼我會得到這個錯誤。我試圖谷歌它,但提出了一個解決方案空。使用POW時MySQL命令不同步()
原始查詢:
SELECT 86400/
(NOW() - `created_at`) *
(
(
SELECT COUNT(`Votes`.`voteID`)
FROM `Votes`
WHERE `postID` = `Posts`.`postID`
LIMIT 1
)
+ 0
* 5
) AS `rank`
FROM `Posts`
查詢與POW():
SELECT POW(
86400
/(NOW() - `created_at`)
*
(
(
SELECT COUNT(`Votes`.`voteID`)
FROM `Votes`
WHERE `postID` = `Posts`.`postID`
LIMIT 1
)
+ 0
* 5
),
1.8
) AS `rank`
FROM `Posts`
我得到的錯誤是#2014 - Commands out of sync; you can't run this command now
我不明白你在向哪種力量提升它,這可能是一個問題,無論如何。至於您的實際錯誤,當客戶端和服務器不同步時會出現此錯誤,這可能有很多原因,但通常與MySQL客戶端錯誤有關(也請參閱此答案:http://stackoverflow.com/a/6583068/54017 ) – Wolph 2014-11-02 17:24:34
我正在升高到1.8但確實沒有什麼相關性。至於你也喜歡的答案,我真的不明白這是如何幫助我的,因爲這只是一個查詢...... – CupOfTea696 2014-11-02 17:28:52
問題是它是MySQL中的錯誤還是客戶端錯誤。它不應該與您的查詢有關。如果這個錯誤真的是使用'POW()'而不是MySQL錯誤。如果不是這是一個客戶端錯誤/與您的MySQL版本不兼容。嘗試使用不同的客戶端執行查詢(即直接從MySQL命令行)。 – Wolph 2014-11-02 17:31:46