2012-05-16 2 views
0

내 프로젝트에서 SQLite를 사용하고 있으며 SQL 쿼리를 작성하여 고객 주문의 총 비용을 검색해야합니다. 다음은 쿼리입니다 :SQL 스크립트 구문 오류

SELECT SUM(g.cost * og.amount) 
     * (CASE om.include WHEN 0 THEN 0.0 ELSE m.markup_pct/100) total_cost 

FROM goods g JOIN orders_goods og ON g.good_id = og.good_id 
    JOIN orders_markups om ON om.order_id = og.order_id 
     JOIN markups m ON om.markup_id = m.markup_id 
       AND om.view_class_id = m.markup_id 
WHERE og.order_id = 0; 

하지만 sqlite3를 통해 내 데이터베이스에 위의 쿼리를 실행할 때 불평 :

Error: near line 1: near ")": syntax error 

당신은 스크립트 뭐가 잘못 어떤 생각을 가지고 있습니까?

도움이 될 것입니다.

P.S. .: 오류가 구문이므로 오류가 데이터베이스의 구조와 관련이 없으므로 데이터베이스 구조를 첨부하지 않습니다. 그것은 END을 실종 :

답변

3

이 경우 문에 구문 오류입니다

(CASE om.include WHEN 0 THEN 0.0 ELSE m.markup_pct/100 **END**) total_cost 
+0

그래서 간단! 나는 CASE가 그런 구분자를 필요로 할지도 모른다는 것을 완전히 잊었다. 빠른 답변 주셔서 감사합니다 :) – tonytony