我有这个完美运行的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