mysql - 仅当 mysql 中所有值都为真时才连接

标签 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

最佳答案

您可以使用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

关于mysql - 仅当 mysql 中所有值都为真时才连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50921760/

相关文章:

php - mysql_fetch_array()/mysql_fetch_assoc()/mysql_fetch_row()/mysql_num_rows等…期望参数1为资源或结果

mysql - #1242 - 子查询返回超过 1 行 - 如何在 mysql 中处理此问题

php foreach 将多维数组打印到表中?

mysql - 异步写入多个 MySQL 数据库

php - 更新查询无法正常工作

mysql - 在 MySQL 中对空间表执行子查询

mysql - 从日期与其他表中的日期不同的表中选择

mysql - 在 MySQL 中转换日期会返回前一个日期

php - MYSQL 查询未按预期工作

python - 如何使用python从数据库MySQL中获取行?