MySQL 将两列合并为一列,其中一列具有 NULL 值(应删除)

标签 mysql

如果这是重复的,我很抱歉,但是当我使用诸如 concat(column1, column2) as column3 之类的解决方案时,我会得到奇怪的值。

我的数据如下:

Table1.Column1   Table2.Column2
A                NULL
B                NULL
NULL             C
NULL             D
E                NULL

注意:只有 1 列具有 NULL 值。

我想要以下内容:

 Column3
  A   
  B   
  C
  D
  E

两列之一具有 NULL 值的属性将保留。这只是糟糕的表/列设计,因为它应该是一张表,但事实并非如此。我不允许更改架构,也不允许插入/更新值。我只被允许进行合理的查询,以合理的方式检索数据。

最佳答案

您可以使用COALESCE来处理NULL值:

SELECT CONCAT(COALESCE(Table1.Column1, ''), COALESCE(Table2.Column2, '') AS Column3
FROM ...

关于MySQL 将两列合并为一列,其中一列具有 NULL 值(应删除),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53073439/

相关文章:

javascript - 为什么我的 php 文件不能从我的 javascript 运行?

php - 使用 AngularJS 处理 JSON 数据

mysql - 在输入变量数组上插入值

mysql - 如何使用表具有相同列名的子查询结果创建更新语句?

mysql - 尝试加快大型表上的 mysql 查询速度

mysql - 无法使用 Mysql -phpMyAdmin 中的存储过程更新表

php - 从 MySQL BLOB 字段中获取 'attachments',并进入文件系统

php 用户注册 num 行不起作用

php - mysql 持久连接的优点

mysql - 在 MySQL 中选择所有具有不同和条件的行