首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Select在此位置对此服务器版本无效,应为:'(',WITH

Select在此位置对此服务器版本无效,应为:'(',WITH
EN

Stack Overflow用户
提问于 2019-05-27 18:09:11
回答 1查看 844关注 0票数 1

我的SQL语句有一个语法错误,我不知道错误在哪里。如果在座的任何人能给我一些启发,我将不胜感激。提前感谢!

代码语言:javascript
复制
SELECT YEAR(co.CO_APPLIED_DT) as SCO_YEAR
      ,MONTH(co.CO_APPLIED_DT) as SCO_MONTH_ID
      ,co.CO_OWNER_ACCNID as SCO_APPL_ACCNID
      ,co.CO_APPROVER_ACCNID as SCO_APPR_ACCNID
      ,co.CO_ISSUE_CTRY_CD as SCO_ISSUE_CTRY_CD
      ,co.CO_FINALDEST_CTRY_CD as SCO_DEST_CTRY_CD
      ,'99999999' AS SCO_HS_CHAP_CD
      ,SUM(CASE
             WHEN co.CO_STATUS IN ('A','P', 'T', 'E', 'C', 'F', 'L') THEN 1
             ELSE 0
           END) AS SCO_APPROVED_CT
      ,SUM(CASE
             WHEN co.CO_STATUS = 'U' THEN 1
             ELSE 0
           END) AS SCO_CANCELLED_CT
      ,SUM(CASE
             WHEN co.CO_STATUS = 'R' THEN 1
             ELSE 0
           END) AS SCO_REJECTED_CT
      ,0 AS SCO_HS_CHAP_CT
  FROM TDocCo co
 WHERE co.CO_STATUS NOT IN ('N', 'D')
   AND co.CO_APPLIED_DT <= :date
   AND YEAR(co.CO_APPLIED_DT) = :year
   AND MONTH(co.CO_APPLID_DT) = :month
 GROUP BY co.CO_APPROVER_ACCNID
         ,co.CO_OWNER_ACCNID
         ,co.CO_ISSUE_CTRY_CD
         ,co.CO_FINALDEST_CTRY_CD
         ,YEAR(co.CO_APPLIED_DT)
         ,MONTH(co.CO_APPLIED_DT);

我收到如上所示的错误消息。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-05-27 18:29:40

这些是我的2分钱:在我的本地数据库中,我编写了您的查询,只更改了参数:date :year和:month with date值。看起来是对的!

代码语言:javascript
复制
 SELECT 
    getDate() as CO_APPLIED_DT,
     23 as CO_OWNER_ACCNID,
     42 as CO_APPROVER_ACCNID,
    'England' as CO_ISSUE_CTRY_CD,
    'Poland' as CO_FINALDEST_CTRY_CD,
    'A' as CO_STATUS 
   INTO TDocCo

SELECT  YEAR(co.CO_APPLIED_DT) as SCO_YEAR, 
    MONTH(co.CO_APPLIED_DT) as SCO_MONTH_ID, 
    co.CO_OWNER_ACCNID as SCO_APPL_ACCNID, 
    co.CO_APPROVER_ACCNID as SCO_APPR_ACCNID, 
    co.CO_ISSUE_CTRY_CD as SCO_ISSUE_CTRY_CD, 
    co.CO_FINALDEST_CTRY_CD as SCO_DEST_CTRY_CD, 
    '99999999' AS SCO_HS_CHAP_CD, 
    SUM(CASE WHEN co.CO_STATUS IN ('A','P', 'T', 'E', 'C', 'F', 'L') THEN 1 ELSE 0 END) AS SCO_APPROVED_CT,  
    SUM(CASE WHEN co.CO_STATUS = 'U' THEN 1 ELSE 0 END) AS SCO_CANCELLED_CT, 
    SUM(CASE WHEN co.CO_STATUS = 'R' THEN 1 ELSE 0 END) AS SCO_REJECTED_CT,
    0 AS SCO_HS_CHAP_CT 
  FROM TDocCo co 
  WHERE co.CO_STATUS NOT IN ('N', 'D')
     AND co.CO_APPLIED_DT <=   getDate()                -- modified 
     AND YEAR(co.CO_APPLIED_DT) =  year (getDate())     -- modified 
     AND MONTH(co.CO_APPLIED_DT) =  month (getDate())   -- modified 
  GROUP BY co.CO_APPROVER_ACCNID, co.CO_OWNER_ACCNID, co.CO_ISSUE_CTRY_CD, co.CO_FINALDEST_CTRY_CD, YEAR(co.CO_APPLIED_DT), MONTH(co.CO_APPLIED_DT);

 DROP TABLE  TDocCo
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56323938

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档