字符串的拼接
1,Mysql
在Java、C#等编程语言中字符串的拼接可以通过加号“+”来实现,比如:"1"+"3"、"a"+"b"。
在MYSQL中也可以使用加号“+”来连接两个字符串,比如下面的SQL:
SELECT '12'+'33',FAge+'1' FROM T_Employee
执行结果
'12'+'33' FAge+'1' 45 26 45 29 45 24 45 26 45 29 45 28 45 24 45 29 45 23
MYSQL会尝试将加号两端的字段值尝试转换为数字类型,如果转换失败则认为字段值为
0,比如我们执行下面的SQL语句:
SELECT 'abc'+'123',FAge+'a' FROM T_Employee
执行完毕我们就能在输出结果中看到下面的执行结果:
'abc'+'123' FAge+'a' 123 25 123 28 123 23 123 25 123 28 123 27 123 23 123 28 123 22
在MYSQL中进行字符串的拼接要使用CONCAT函数,CONCAT函数支持一个或者多个参数,
参数类型可以为字符串类型也可以是非字符串类型,对于非字符串类型的参数MYSQL将尝试
将其转化为字符串类型,CONCAT函数会将所有参数按照参数的顺序拼接成一个字符串做为
返回值。比如下面的SQL语句用于将用户的多个字段信息以一个计算字段的形式查询出来:
SELECT CONCAT('工号为:',FNumber,'的员工的幸福指数:',FSalary/(FAge-21))
FROM T_Employee 执行完毕我们就能在输出结果中看到下面的执行结果:
CONCAT('工号为:',FNumber,'的员工的幸福指数:',FSalary/(FAge-21)) 工号为:DEV001的员工的幸福指数:2075.000000 工号为:DEV002的员工的幸福指数:328.685714 工号为:HR001的员工的幸福指数:1100.440000
MYSQL中还提供了另外一个进行字符串拼接的函数CONCAT_WS,
CONCAT_WS可以在待拼接的字符串之间加入指定的分隔符,它的第一个参数值为采用的分
隔符,而剩下的参数则为待拼接的字符串值,比如执行下面的SQL:
SELECT CONCAT_WS(',',FNumber,FAge,FDepartment,FSalary) FROM T_Employee
执行完毕我们就能在输出结果中看到下面的执行结果:
CONCAT_WS(',',FNumber,FAge,FDepartment,FSalary) DEV001,25,Development,8300.00 DEV002,28,Development,2300.80 HR001,23,HumanResource,2200.88 HR002,25,HumanResource,5200.36 IT001,28,InfoTech,3900.00 IT002,27,InfoTech,2800.00 SALES001,23,Sales,5000.00 SALES002,28,Sales,6200.00 SALES003,22,Sales,1200.00
2,oracle
Oracle中使用“||”进行字符串拼接,其使用方式和MSSQLServer中的加号“+”一样。
比如执行下面的SQL语句:
SELECT '工号为'||FNumber||'的员工姓名为'||FName FROM T_Employee WHERE FName IS NOT NULL
执行完毕我们就能在输出结果中看到下面的执行结果:
工号为||FNUMBER||的员工姓名为||FNAME 工号为DEV001的员工姓名为Tom 工号为DEV002的员工姓名为Jerry 工号为SALES001的员工姓名为John 工号为SALES002的员工姓名为Kerry 工号为SALES003的员工姓名为Stone 工号为HR001的员工姓名为Jane 工号为HR002的员工姓名为Tina 工号为IT001的员工姓名为Smith
除了“||”,Oracle还支持使用CONCAT()函数进行字符串拼接,比如执行下面的SQL语句:
SELECT CONCAT('工号:',FNumber) FROM T_Employee
执行完毕我们就能在输出结果中看到下面的执行结果:
CONCAT(工号:,FNUMBER) 工号:DEV001 工号:DEV002 工号:HR001 工号:HR002 工号:IT001 工号:IT002 工号:SALES001 工号:SALES002 工号:SALES003
如果CONCAT中连接的值不是字符串,Oracle会尝试将其转换为字符串,
与MYSQL的CONCAT()函数不同,Oracle的CONCAT()函数只支持两个参数,不支持两个以
上字符串的拼接。如果要进行多个字符串的拼接的话,可以使用多个CONCAT()函数嵌套使用。
SELECT CONCAT(CONCAT(CONCAT('工号为',FNumber),'的员工姓名为'),FName) FROM T_Employee WHERE FName IS NOT NULL
执行完毕我们就能在输出结果中看到下面的执行结果:
CONCAT(CONCAT(CONCAT(工号为,FNUMBER),的员工姓名为),FNAME) 工号为DEV001的员工姓名为Tom 工号为DEV002的员工姓名为Jerry 工号为SALES001的员工姓名为John 工号为SALES002的员工姓名为Kerry 工号为SALES003的员工姓名为Stone 工号为HR001的员工姓名为Jane 工号为HR002的员工姓名为Tina 工号为IT001的员工姓名为Smith
相关推荐
mysql 拼接字符串查询语句。 普通拼接字符串和拼接某一列的所有值。
mysql拼接字符串函数
Mybatis Mapper.xml中字符串形式传参,逗号分隔 AND中拼接OR。
mysql拼接字符串函数
mysql拼接字符串函数
要将结果集中某个指定的列进行字符串拼接,这要怎么做呢?主角闪亮:sparkles:登场 GROUP_CONCAT(expr) 在 Mysql 官方文档 中,该函数被放在聚合函数章节,如果你要按照指定字段分组拼接,就要配合关键字 GRO
将表中last_name和first_name中的字符串拼接 select concat(last_name,first_name) as 姓名 from employees; #只会修改last_name不会修改first_name SELECT first_name,last_name AS f FROM employees; #将两个...
在动态拼接字符串时,我们常会用到字符拼接,我对拼接的引号不理解,如: 1、”’+ id +”’ 为什么是3个引号,为什么左边一个加号右边一个加号(能不能着重帮我解释下这个,详细点) SQL code sum(case Leave when...
下面两个函数的使用和FIND_IN_SET一样,使用时只需要把FIND_IN_SET换成FIND_PART_IN_SET或FIND_ALL_PART_IN_SET 例如某字段里是为1,2,3,4,5 使用方法: 第一种,传入1,3,6 可以查出来 select * from XXX where FIND...
mysql拼接字符串函数
在使用mysql的时候经常要用到拼接的功能,最近的工作就遇到拼接的问题,在将字符串拼接Num类型的时候发现居然报错,下面通过这篇文章来看看解决的方法吧,有需要的朋友们可以参考借鉴。
1 case when 写法 2 sum case when 用法 3 select 拼接字段 示例如下: when 2 then 'C' else 'D' end ) as '类型',count(*) as '数量' from table group by orderType
ubuntu 14.04 64位下完成测试 刚学习C语言的小伙伴...使用的技术:C语言读文件到链表,生成链表结点, 字符串拼接操作,内存分配,内存释放,包括使用进行内存泄漏检测等 楼主出品,虽不是什么精品,但必须质量保证!
和其他数据库系统类似,Oracle字符串连接使用“||”进行字符串拼接,其使用方式和MSSQLServer中的加号“+”一样。 比如执行下面的SQL语句: 代码如下:SELECT ‘工号为’||FNumber||’的员工姓名为’||FName FROM T_...
简化sql拼接过程,提升开发效率,减少拼接错误。 可以拼接select、update、delete语句以及where条件语句。 拼接where条件可自动组织参数并返回。 支持andEq(), andGt(), andGe(),andLt(), andLe(), andEqDate(), ...
MySQL常用字符串函数 先看下数据库表 lengtt(str) length:获取参数值的字节个数(注意不是字符个数) SELECT LENGTH('haosy') 结果是5 SELECT LENGTH('haosy郝') 结果是8 不是6(是字节个数不是字符个数,因编码...
在PHP程序开发中,经常会执行字符串的截取操作,比如输出信息列表时,标题不宜过长,打印文章摘要时,也要执行一系列的字符串截取操作。遇到这些需求时,我们经常会想到使用substr()方法来实现,substr()对全英文...