(SELECT COUNT( `ad_general`.`id` ) as no
FROM (`ad_general`)
WHERE MATCH (title, body) AGAINST (' +stack* 'IN BOOLEAN MODE) AND `user` = '1')
) AS count
此查询给出了此错误:
1064 - 您的SQL语法出错;检查与MySQL服务器版本对应的手册,以获得正确的语法
第17行附近的“AS计数”
但是这个按照我的预期工作。
SELECT COUNT( `ad_general`.`id` ) as count
FROM (`ad_general`)
WHERE MATCH (title, body) AGAINST (' +stack* 'IN BOOLEAN MODE) AND `user` = '1')
第一个版本出了什么问题?我需要它像第一个一样工作。
答案 0 :(得分:2)
您不能像这样命名查询。您可以通过将select
置于前面来解决此问题:
select (SELECT COUNT( `ad_general`.`id` ) as no
FROM (`ad_general`)
WHERE MATCH (title, body) AGAINST (' +stack* 'IN BOOLEAN MODE) AND `user` = '1')
) AS count
或者你可以这样做:
SELECT COUNT( `ad_general`.`id` ) as `count`
FROM (`ad_general`)
WHERE MATCH (title, body) AGAINST (' +stack* 'IN BOOLEAN MODE) AND `user` = '1')