将两个案例查询合并为一个

时间:2014-05-24 18:32:47

标签: mysql sql

我想查询一下我在哪里首先用列中的日期检查当前日期,然后根据我写我的案例。此查询单独工作正常,但何时 我把它们结合起来不起作用。

SELECT MONTH(CURRENT_DATE)= SUBSTRING(yearmonth,6) FROM dp;

SELECT i, 
CASE 
WHEN DAY(CURRENT_DATE) =1 THEN `d1_v` 
WHEN DAY(CURRENT_DATE) =2 THEN `d1_v` 
END VALUE 
FROM dp;

合并查询..

SELECT i, 
CASE 
WHEN((MONTH(CURRENT_DATE ))= SUBSTRING(yearmonth,6) THEN 
(CASE
         WHEN DAY(CURRENT_DATE) = 1 THEN `d1_v`
            WHEN DAY(CURRENT_DATE) = 2 THEN `d1_v`
         END VALUE)END)Y
                  FROM dp

请指导我

1 个答案:

答案 0 :(得分:1)

您必须删除'('之后:

SELECT i, 
CASE 
WHEN ((MONTH(CURRENT_DATE )) = SUBSTRING(yearmonth,6))THEN 
  CASE
      WHEN DAY(CURRENT_DATE) = 1 THEN `day1_value`
      WHEN DAY(CURRENT_DATE) = 2 THEN `day1_value`
  END 
END Y
FROM dp;

sqlfiddle的输出现在是5,null。

希望这对你有用。 sqlfiddle是:http://sqlfiddle.com/#!2/e59c5/10