MySQL-Query的问题

时间:2014-10-21 16:14:36

标签: mysql sql mysqli

当我尝试执行此查询时,我遇到了麻烦。

INSERT INTO af_pres (cod,pres,fecha,tipo,stad,oper,ref,monto)
 VALUES 
 ("",
      (CASE
        (SELECT p.pres FROM af_pres p WHERE 
         p.pres LIKE "%0100000100191000140100%" AND 
         p.fecha LIKE "%2014%" = '' 
      THEN pres ELSE 
        (pres = "2014"))END),
       "2014-09-26","G","1","M","MOD-2014",70000);

1 个答案:

答案 0 :(得分:0)

您不能像在查询中那样在CASE中使用SELECT。 MySQL没有内置此功能。 如果您描述了您想要做的事情,我们可以为您提供更多帮助。

好的,这是一个解决方案,但我还没有尝试过:)

INSERT INTO af_pres (cod,pres,fecha,tipo,stad,oper,ref,monto)
VALUES 
    ("", 
    (SELECT IF (COUNT(p.pres) > 0, pres, '2014') 
     FROM af_pres p 
     WHERE p.pres LIKE "%0100000100191000140100%" 
     AND p.fecha LIKE "%2014%" = ''), 
    "2014-09-26",
    "G",
    "1",
    "M",
    "MOD-2014",
    70000);