我刚开始学习PHP。我正在尝试做一个非常简单的sql select语句 -
<?php
$sql = 'SELECT firstname, lastname,email
FROM MyGuests
ORDER BY firstname where id=12';
?>
它出现以下错误 -
无法连接到数据库testdb:SQLSTATE [42000]:语法错误或访问冲突:1064 SQL语法中有错误;
对不起,如果这是一个愚蠢的问题。
答案 0 :(得分:2)
切换ORDER BY
和WHERE
子句:
SELECT firstname,
lastname,
email
FROM MyGuests
WHERE id = 12
ORDER BY firstname
这是一个有用的Stack Overflow问题,它列出了MySQL语句的解释顺序:
答案 1 :(得分:1)
您的查询顺序错误,order by
需要在where
之后。
SELECT firstname, lastname,email
FROM MyGuests
where id=12
ORDER BY firstname
您可以在手册中查看所有功能的订单http://dev.mysql.com/doc/refman/5.7/en/select.html。
答案 2 :(得分:1)
你的语法错误..
SELECT..
FROM..
WHERE..
GROUP BY..
ORDER BY ..
所以:
SELECT firstname, lastname,email
FROM MyGuests
where id=12
ORDER BY firstname