2013-02-08 42 views
0

我有这个选择的情况下不能正常工作#1064

SELECT 
CASE WHEN QuantityPart =< Threshold 
       THEN (Threshold - QuantityPart) + Threshold 
     END as RecommendedReorderQuantity, * 
FROM parts, stock 

任何人都可以帮助的问题吗?

SELECT *, 
     CASE WHEN QuantityPart =< Threshold 
      THEN (Threshold - QuantityPart) + Threshold 
     END as RecommendedReorderQuantity 
FROM parts INNER JOIN stock 
     ON parts.PartID = stock.PartID 
+0

有什么确切的问题? – Sean

回答

3

*应该是第一位的CASE sattement之前,还有一两件事,它应该是

<==<

SELECT *, 
     CASE WHEN QuantityPart <= Threshold 
      THEN (Threshold - QuantityPart) + Threshold 
     END as RecommendedReorderQuantity 
FROM parts, stock 

一点题外话,查询产生笛卡尔乘积。如果这不是你想要的tthen您需要提供用于连接状态,前

SELECT *, 
     CASE WHEN QuantityPart <= Threshold 
      THEN (Threshold - QuantityPart) + Threshold 
     END as RecommendedReorderQuantity 
FROM parts INNER JOIN stock 
     ON parts.columnName = stock.columnName 

其中columnName是定义他们的关系的列。

+0

我从来不知道。 –

+0

#1064 - 您的SQL语法错误;检查与您的MySQL服务器版本相对应的手册,以便在第2行出现'= < Threshold THEN(Threshold - QuantityPart)+ Threshold'时使用正确的语法 –

+0

正在出现我认为case case case语句错误 –

0

此外,指定else条件是安全的做法,即使是微不足道的。

0

替换= <与< =

选择 CASE WHEN QuantityPart < =阈值 THEN(阈值 - QuantityPart)+阈值 END作为RecommendedReorderQuantity,* 从零部件,股票

相关问题