仅当mysql中的所有值都为true时才连接

时间:2018-06-19 06:19:33

标签: mysql

以下是我用来连接siretagprefix和siretagsec

的查询
CONCAT('TZN',
            `adggtnz`.`reg04_rpt_animreg`.`siretagprefix`,
            `adggtnz`.`reg04_rpt_animreg`.`siretagsec`) AS `siretagid`,

当siretagprefix和siretagsec值为null时查询的结果,我得到TZN作为结果。只有在所有值都为真时才能连接。

enter image description here

2 个答案:

答案 0 :(得分:2)

您可以使用CASE检查列值

CASE WHEN `adggtnz`.`reg04_rpt_animreg`.`siretagprefix` IS NOT NULL
      AND `adggtnz`.`reg04_rpt_animreg`.`siretagsec` IS NOT NULL
THEN
    CONCAT('TZN',
                `adggtnz`.`reg04_rpt_animreg`.`siretagprefix`,
                `adggtnz`.`reg04_rpt_animreg`.`siretagsec`)
ELSE NULL END AS siretagid

答案 1 :(得分:0)

您可以使用case表达式:

CASE WHEN `adggtnz`.`reg04_rpt_animreg`.`siretagprefix` IS NOT NULL AND
          `adggtnz`.`reg04_rpt_animreg`.`siretagsec`    IS NOT NULL
     THEN CONCAT('TZN',
                 `adggtnz`.`reg04_rpt_animreg`.`siretagprefix`,
                 `adggtnz`.`reg04_rpt_animreg`.`siretagsec`)
END AS `siretagid`