繁体   English   中英

合并成列,成为MySQL中的新列

[英]Combine to columns into one new column in mySQL

我在将2列合并到mySQL中的单列时遇到问题。

这是我想发生的事情:

由此

+----------------+----------------+----------+
|    male        |     female     |   gender |
+----------------+----------------+----------+
|    male        |      null      |   null   |
+----------------+----------------+----------+
|    male        |      null      |   null   |
+----------------+----------------+----------+
|    null        |    female      |   null   |
+----------------+----------------+----------+
|    male        |      null      |   null   |
+----------------+----------------+----------+

对此

+----------+
|   gender |
+----------+
|   male   |
+----------+
|   male   |
+----------+
|  female  |
+----------+
|   male   |
+----------+

我用过:

SELECT male, 
   female, 
   COALESCE(male, female) AS gender 
FROM nrco_ldap

但“性别”列中没有任何反应。

您正在尝试更新现有的列,因此select显然不是这样做的方法。 因此,您需要编写一个update查询,如下所示:

update nrco_ldap
set gender = coalesce(male,female)

如果除了填充gender列之外,您还想删除male列和female列,则还需要编写适当的drop语句,如下所示:

alter table nrco_ldap drop column male;
alter table nrco_ldap drop column female;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM