如何用SQL连接两个以上的字段?

要用SQL连接两个以上的字段,可以使用CONCAT()或CONCAT_WS()函数。语法如下。让我们首先来看一下CONCAT()

SELECT CONCAT(yourColumnName1,'/',yourColumnName2, '/',yourColumnName3, '/',......N) AS anyVariableName FROM yourTableName;

语法如下:

SELECT CONCAT_WS(‘/’,yourColumnName1,yourColumnName2,.....N) AS anyVariableName FROM yourTableName;

为了理解上述语法,让我们创建一个表。创建表的查询如下:

mysql> create table MoreThan2ColumnConcat

   -> (

   -> Id int,

   -> Name varchar(20),

   -> Age int,

   -> Marks int

   -> );

使用insert命令在表中插入一些记录。查询如下:

mysql> insert into MoreThan2ColumnConcat values(1,'John',24,89);

mysql> insert into MoreThan2ColumnConcat values(11,'Larry',25,90);

mysql> insert into MoreThan2ColumnConcat values(15,'Mike',26,79);

mysql> insert into MoreThan2ColumnConcat values(16,'Sam',21,99);

现在,您可以使用select语句显示表中的所有记录。查询如下:

mysql> select *from MoreThan2ColumnConcat;

以下是输出:

+------+-------+------+-------+

| Id   | Name  | Age  | Marks |

+------+-------+------+-------+

|    1 | John  |   24 |    89 |

|   11 | Larry |   25 |    90 |

|   15 | Mike  |   26 |    79 |

|   16 | Sam   |   21 |    99 |

+------+-------+------+-------+

4 rows in set (0.00 sec)

这是用来连接两个以上字段的查询CONCAT()

mysql> select concat(Id,'/',Name, '/',Age, '/',Marks) as ConcatMoreFields from MoreThan2ColumnConcat;

以下是输出:

+------------------+

| ConcatMoreFields |

+------------------+

| 1/John/24/89     |

| 11/Larry/25/90   |

| 15/Mike/26/79    |

| 16/Sam/21/99     |

+------------------+

4 rows in set (0.00 sec)

让我们来看一下使用CONCAT_WS()来连接两个以上字段的查询。

mysql> select concat_ws('/',Id,Name,Age,Marks) as ConcatMoreFields from MoreThan2ColumnConcat;

以下是输出:

+------------------+

| ConcatMoreFields |

+------------------+

| 1/John/24/89     |

| 11/Larry/25/90   |

| 15/Mike/26/79    |

| 16/Sam/21/99     |

+------------------+

4 rows in set (0.00 sec)

以上是 如何用SQL连接两个以上的字段? 的全部内容, 来源链接: utcz.com/z/348873.html

回到顶部