当前位置:  开发笔记 > 后端 > 正文

MySQL中的字符串连接

如何解决《MySQL中的字符串连接》经验,为你挑选了3个好方法。

我正在使用MySQL和MySQL Workbench 5.2 CE.当我尝试来连接2列,last_name并且first_name,它不工作:

select first_name + last_name as "Name" from test.student

Eugene Yarma.. 235

MySQL与大多数DBMS使用+||用于连接不同.它使用的CONCAT功能:

SELECT CONCAT(first_name, " ", last_name) AS Name FROM test.student

正如@eggyal在评论中指出的那样,您可以||通过设置PIPES_AS_CONCATSQL模式在MySQL中启用字符串连接.



1> Eugene Yarma..:

MySQL与大多数DBMS使用+||用于连接不同.它使用的CONCAT功能:

SELECT CONCAT(first_name, " ", last_name) AS Name FROM test.student

正如@eggyal在评论中指出的那样,您可以||通过设置PIPES_AS_CONCATSQL模式在MySQL中启用字符串连接.


请注意,这不是*完全正确:当[`PIPES_AS_CONCAT`](http://dev.mysql.com/doc/en/server-sql-mode.)时,MySQL*支持`||`进行字符串连接. html #sqlmode_pipes_as_concat)启用SQL模式.
更好的答案,解释说MySQL不使用连接运算符.
设置`PIPES_AS_CONCAT`:`SET @@ SQL_MODE = CONCAT(@@ SQL_MODE,',PIPES_AS_CONCAT');`.取消设置:`SET @@ SQL_MODE = REPLACE(@@ SQL_MODE,'PIPES_AS_CONCAT','');`.有关更多示例,请访问https://mariadb.com/kb/en/library/sql-mode/#examples

2> ADW..:

尝试:

select concat(first_name,last_name) as "Name" from test.student

或更好:

select concat(first_name," ",last_name) as "Name" from test.student



3> Harry Joy..:

使用concat()函数而不是+像这样:

select concat(firstname, lastname) as "Name" from test.student

推荐阅读
勤奋的瞌睡猪_715
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有