当前位置: 首页 > 面试题库 >

MySQL合并两列并添加到新列中

公良扬
2023-03-14
问题内容

我的MySQL表具有以下结构:

+----------------+----------------+----------+
|    zipcode     |      city      |   state  |
+----------------+----------------+----------+
|     10954      |     Nanuet     |    NY    |
+----------------+----------------+----------+

我想将以上三列合并为一列,如下所示:

+---------------------+
|      combined       |
+---------------------+
| 10954 - Nanuet, NY  |
+---------------------+

我想将此“组合”列添加到表的末尾而不破坏原始的3个字段。


问题答案:

创建列:

ALTER TABLE yourtable ADD COLUMN combined VARCHAR(50);

更新当前值:

UPDATE yourtable SET combined = CONCAT(zipcode, ' - ', city, ', ', state);

自动更新所有未来值:

CREATE TRIGGER insert_trigger
BEFORE INSERT ON yourtable
FOR EACH ROW
SET new.combined = CONCAT(new.zipcode, ' - ', new.city, ', ', new.state);

CREATE TRIGGER update_trigger
BEFORE UPDATE ON yourtable
FOR EACH ROW
SET new.combined = CONCAT(new.zipcode, ' - ', new.city, ', ', new.state);


 类似资料:
  • 在PostgreSQL中,我想使用SQL语句合并两列并从中创建一个新列。 我正在考虑使用concat(…) ,但有更好的方法吗<最好的方法是什么?

  • 问题内容: CREATE TABLE logistics ( id int primary key, campaign VARCHAR(255), event_type VARCHAR (255), date_offered VARCHAR (255), date_ordered DATE, date_delivered DATE, date_recorded DATE, date_complet

  • 问题内容: 我正在尝试找到一种将两列合并为一个的方法,但是要保持列中的值“ 0”而不是单词的组合。 这些是我和其他人尝试过的: 有人可以让我知道我做错了吗? 问题答案: 我的猜测是,您使用的是MySQL,其中的运算符会进行加法运算,并将值自动转换为数字。如果值不是以数字开头,则转换后的值为。 所以试试这个: 两种添加空间的方法:

  • 问题内容: 我非常确定应该有一种更Python化的方法来执行此操作-但我想不起来:如何将二维列表合并到一维列表中?有点像zip / map,但是有两个以上的迭代器。 示例-我有以下列表: 我希望有 到目前为止,我想出的是: 但这对我来说似乎不是很优雅/ Pythonic。除了不检查2D数组中的所有“线”是否都具有相同的长度,可以相互添加等等之外,还有什么更好的方法呢? 问题答案:

  • 本文向大家介绍MySQL查询将两列合并为一个列?,包括了MySQL查询将两列合并为一个列?的使用技巧和注意事项,需要的朋友参考一下 您可以为此使用功能。在该函数中,它从列中返回第一个NON NULL值。为了理解这个概念,让我们首先创建一个演示表 使用insert命令在表中插入一些记录。查询如下- 现在,您可以使用select语句显示表中的所有记录。查询如下- 以下是输出 这是将两列合并为一个查询的

  • 问题内容: 我有第1列和第2列,并希望将它们合并到同一表的第3列中。如果第2列为空,则显示第1列的值;如果第1列为空,则它们显示第2列的数据。如果它们都为空,则显示为空。我尝试了两件事: 1)使用CONCAT 。 仅当两个列都不为null时,它才合并列。否则,它只是将null声明为null。 2)使用(第1栏+第2栏)。 。 没有显示所需的输出。 我正在用Java编写此代码。谢谢 问题答案: us