如何用 MySQL 中已有的列名将两列串联成一列?
原文:https://www . geesforgeks . org/how-concat-two-columns-in-one-with-existing-column-name-in-MySQL/
在本文中,我们将看到一个使用现有列名将两列连接成一列的 SQL 查询。我们可以使用 CONCAT()函数执行上面的活动。
CONCAT(): 它以列名作为参数,将传递给函数的列参数的所有值串联起来后,返回一个有值的列。有两种方法可以执行该活动:
- 而不用 CONCAT 函数替换现有的列。
- 通过用 CONCAT()函数替换 REPLACE()函数替换现有列。
语法:
CONCAT(column_name1, column_name2) AS column_name;
步骤 1: 创建数据库
我们可以使用以下命令创建一个名为 geeks 的数据库。
查询:
CREATE DATABASE geeks;
第二步:使用数据库
使用下面的 SQL 语句将数据库上下文切换到极客:
查询:
USE geeks;
步骤 3: 表格定义
我们的极客数据库中有演示表。
查询:
CREATE TABLE demo_table(
FIRSTNAME VARCHAR(20),
LASTNAME VARCHAR(20),
AGE INT);
第 4 步:将数据插入表格
查询:
INSERT INTO demo_table VALUES
('Romy', 'Kumari', 21),
('Pushkar', 'Jha', 22),
('Meenakshi', 'Jha', 19),
('Rinkle', 'Arora', 22),
('Ayushi', 'Choudhary', 21),
('Sujata', 'Jha', 31);
第五步:查看内容
执行以下查询查看表格的内容
查询:
SELECT * FROM demo_table;
输出:
步骤 6: 将两列串联成一列
方法一:不替换 现有栏目
此方法不会对原始表进行更改。
为了演示,我们将连接名字和姓氏,并将列命名为名字。
查询:
SELECT *, CONCAT(FIRSTNAME, LASTNAME) AS FIRSTNAME
FROM demo_table;
输出:
在这里,我们可以看到 FIRSTNAME 和 LASTNAME 是连接在一起的,但是它们之间没有空格,如果你想在 FIRSTNAME 和 LASTNAME 之间添加空格,那么就在 CONCAT()函数中添加空格(')。
查询:
SELECT *, CONCAT(FIRSTNAME,' ', LASTNAME) as FIRSTNAME
FROM demo_table;
输出:
方法二:替换 现有栏目
此方法将更改原始表。
为了演示,我们将使用“名字”和“姓氏”列的串联值替换“名字”。
查询:
UPDATE demo_table
SET FIRSTNAME = REPLACE(FIRSTNAME,FIRSTNAME, CONCAT(FIRSTNAME,' ', LASTNAME));
输出:
版权属于:月萌API www.moonapi.com,转载请注明出处