MySQL多个字段合并简单实用的方法mysql不同字段合并

使用 CONCAT 函数直接合并字段是最简单的。
CONCAT(a,b,c) 将 a、b、c 直接拼写为字符串。
只需使用 CONCAT(' ',a,b) 用空格分隔它们即可。
组合以逗号分隔的多个字段并使用 CONCAT_WS(',',a,b,c)。

上周我刚刚处理了一份合并地址字段的订单。
只需使用 CONCAT(省,' ',城市,' ',街道) 就可以完成。
CONCAT_WS分隔符省去了很多麻烦,不需要每次都输入空格。

如果字段包含NULL,CONCAT将返回NULL。
使用 CONCAT_NULL_IF_NULL(a,b) 可以避免此问题。

亲自尝试一下CONCAT功能,非常方便。

MySQL多个字段取并集轻松实现数据筛选和合并mysql不同字段取并集

你好,我给你讲一个我做数据库时的故事。
当时我刚刚接手一个使用MySQL的项目,数据量相当大。
我需要创建一个报告并合并两个表中的数据,以便不存在重复记录。

我想了一会儿,但是该怎么办呢?经过一番查找,发现使用UNION非常方便。
我记得table1 和table2 都有三个字段:id、name、age。
我写了一些SQL,对你提到的方法稍作修改。
我使用 UNION 而不是 ALL。
我想删除重复项。
SQL 从表 1 中选择 ID、姓名、年龄 联盟 从表2 中选择ID、姓名、年龄;
结果很好,直接合并后没有重复记录。
当时我就觉得这真是一件神器。
特别是当你有大量数据时,使用 UNION 比逐一检查要方便得多。

但是让我提醒你,那一年,我有一个同事。
当我创建UNION时,我忘记了两个SELECT语句中的列的数量和类型必须相同。
结果?数据库直接报列不匹配的错误。
因此,使用UNION时必须满足这两个条件。

另一个是UNION ALL。
当我第一次开始使用它时,我很困惑。
什么是全联?我们将交付所有物品,无论它们是否重复。
有时你需要删除重复项,所以使用 UNION。
有时您并不关心是否有重复项。
例如,如果您想查看所有可能的组合,请使用 UNION ALL。

基本上,UNION很方便,但需要注意细节。
特别是列的数量和类型应该一致。
不一致使报告错误变得很痛苦。
你看,我这十年来掉过的坑,够你参考的了。