1

谁能告诉我这个查询有什么问题?

<cfquery name="activesurveys">
      SELECT surveys.id,
             surveys.name,
             surveys.description,
      WHERE  surveys.active= 1
        AND  surveys.showinpubliclist= 1
     FROM 
             surveys
</cfquery>
<cfreturn activesurveys>

当我执行此代码时,它会出现此错误:

“您的 SQL 语法有错误;请查看与您的 MySQL 服务器版本相对应的手册,以获取正确的语法,以便在第 4 行的 'WHEREsurveys.active=1 ANDsurveys.showinpubliclist=1' 附近使用”

4

4 回答 4

7

我认为您的查询应该是:

SELECT surveys.id,
    surveys.name,
    surveys.description
FROM surveys
WHERE surveys.active= 1
    AND surveys.showinpubliclist= 1

基本上,在,您要选择的最后一个字段之后有一个,这是错误的,而且还有一个事实是FROM在之后SELECT和之前WHERE......

于 2013-01-31T20:59:28.087 回答
5

您需要重新排序您的语句。FROM需要在WHERE. 在SELECT. 应该看起来像这样:

<cfquery name="activesurveys">
    SELECT surveys.id,
           surveys.name,
           surveys.description
    FROM  surveys
    WHERE surveys.active = 1
      AND surveys.showinpubliclist = 1
</cfquery>
<cfreturn activesurveys>
于 2013-01-31T20:59:51.210 回答
4

我不知道 ColdFusion 但 SQL 语法是

SELECT surveys.id,
       surveys.name,
       surveys.description
FROM 
       surveys
WHERE  surveys.active= 1
       AND surveys.showinpubliclist= 1
于 2013-01-31T20:59:49.557 回答
2

删除最后一列名称“surveys.description”末尾的逗号,并将 FROM 语句移到 WHERE 子句之前。像这样

SELECT colname, colname, colname
FROM tablename

WHERE condition...
于 2013-01-31T21:01:30.257 回答