在PHP SQL查询中使用“to”

在PHP SQL查询中使用“to”,php,mysql,Php,Mysql,我的SQL查询是SELECT*FROM chat WHERE to='$user\u id'和client\u id='001'限制4 出于某种原因,该查询给了我以下错误: 您的SQL语法有错误;检查与您的MySQL服务器版本对应的手册,以了解在第1行的“to=”1“和client_id=”001“LIMIT 4”附近使用的正确语法 我使用了另一行,查询运行得非常好-错误是因为单词to吗?或者这背后还有别的原因 以下是PHP,仅供参考: $user_id = $_SESSION['user_id

我的SQL查询是SELECT*FROM chat WHERE to='$user\u id'和client\u id='001'限制4 出于某种原因,该查询给了我以下错误: 您的SQL语法有错误;检查与您的MySQL服务器版本对应的手册,以了解在第1行的“to=”1“和client_id=”001“LIMIT 4”附近使用的正确语法 我使用了另一行,查询运行得非常好-错误是因为单词to吗?或者这背后还有别的原因

以下是PHP,仅供参考:

$user_id = $_SESSION['user_id'];
$client_id = '001';
if (!$query = sql("SELECT * FROM arrowchat WHERE to = '$user_id' AND client_id = '$client_id' LIMIT 4")) {
    echo mysql_error();
} else {
    echo 'success';
}
要成为保留的mysql关键字,您需要像这样使用倒勾:

     SELECT * FROM arrowchat WHERE `to` ....
to是mysql中的保留关键字,不能像在查询中那样使用它。您需要用反勾号将其包装起来:

SELECT * FROM chat WHERE `to` = '$user_id' AND client_id = '001' LIMIT 4

尝试在backticks中引用to:WHERE`to`='$user\u id'。真不敢相信我错过了这个新手错误。感谢大家的及时回复,人们已经盯着这个问题看了大约2个小时了。与其因为它是一个保留字而不得不引用,不如更改列名。@AndyLester唯一的问题是,有一个脚本已经准备好使用to-所以我不得不多次更改变量。短期痛苦换取长期收益