首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在mySQL中将到列合并为一个新列

在mySQL中将到列合并为一个新列
EN

Stack Overflow用户
提问于 2015-11-26 02:49:05
回答 1查看 56关注 0票数 0

在mySQL中将2列合并为单列有问题。

这就是我想要的:

从这里开始

代码语言:javascript
复制
+----------------+----------------+----------+
|    male        |     female     |   gender |
+----------------+----------------+----------+
|    male        |      null      |   null   |
+----------------+----------------+----------+
|    male        |      null      |   null   |
+----------------+----------------+----------+
|    null        |    female      |   null   |
+----------------+----------------+----------+
|    male        |      null      |   null   |
+----------------+----------------+----------+

到这个

代码语言:javascript
复制
+----------+
|   gender |
+----------+
|   male   |
+----------+
|   male   |
+----------+
|  female  |
+----------+
|   male   |
+----------+

我用过:

代码语言:javascript
复制
SELECT male, 
   female, 
   COALESCE(male, female) AS gender 
FROM nrco_ldap

但在性别专栏里什么都没有发生。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-11-26 03:18:35

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

代码语言:javascript
复制
update nrco_ldap
set gender = coalesce(male,female)

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

代码语言:javascript
复制
alter table nrco_ldap drop column male;
alter table nrco_ldap drop column female;
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33929806

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档