oracle/mysql拼接值遇到的坑及双竖线

79次阅读
没有评论

共计 1811 个字符,预计需要花费 5 分钟才能阅读完成。

行业资讯    
数据库    
oracle/mysql 拼接值遇到的坑及双竖线 || 和 concat 怎么使用

这篇“oracle/mysql 拼接值遇到的坑及双竖线 || 和 concat 怎么使用”文章的知识点大部分人都不太理解,所以丸趣 TV 小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“oracle/mysql 拼接值遇到的坑及双竖线 || 和 concat 怎么使用”文章吧。

oracle mysql 拼接值遇到的坑 双竖线 || concat||

“||”在 oracle 中是拼接值,但在 mysql 中是“或”的意思。

where name like  %  ||  Tony  ||  %

所以推荐使用 concat()

concat()

但 concat() 也有坑。

mysql 中,可以直接用 concat 拼接 3 个值,

concat(  %  ,  Tonny  ,  %  )

oracle 中,这样使用是错误的。因为 oracle 的 concat 只能拼接 2 个值,需要这样:

concat(  %  , concat( Tonny  ,  %) )

Oracle 中的字段拼接 CONCAT 和 || 在 Oracle 中,字符串拼接有两种方法,分别是 CONCAT() 函数和“||”拼接 1、CONCAT() 函数拼接

缺点:只支持两个字符串的拼接,超过两个会报错(报的错好像是缺失右括号)

// 表中的两个字段拼接
select concat(t1.column_1,t1.column_2) from table t1;// 任意一个字段与任意字符串拼接  (time 是取的别名,记住:Oracle  取别名不要用 as )
select concat(时间是:  ,t1.column_2) time from table t1;
select concat(t1.column_1,   单位:元) time from table t1;// 超过两个字段,会报错(下面这样写会报错)select concat(t1.column_1,t1.column_2,t1.column_3) from table t1;

在使用 CONCAT() 函数进行字符串拼接时,如果拼接的字段(字符串)中有中文,可能会导致乱码,解决方法把拼接的字段(字符串)加上 to_char() 即可:

// 如果遇到乱码,加上 to_char()
select concat(to_char(t1.column_1),to_char(t1.column_2)) time from table t1;

2、使用“||”进行字符串的拼接

使用“||”拼接,就不受限制了

// 表中两个字符串拼接,取别名为 time
select t1.column_1 || t1.column_2 time from table t1;// 表中三个字符串拼接,取别名为 time
// 这里可以使用括号将几个要拼接的字段括起来,可读性会好点,好像加不加括号都不影响
select (t1.column_1 || t1.column_2 || t1.column_3) time from table t1;

用“||”拼接的好处,在做模糊查询时,可以利用这个

// 这样可以动态进行模糊查询,field 是动态值
select t1.* from table t1 where t1.name like  %  || field ||  % // 如果对模糊查询更加细粒度,当然,也可以使用 concat() 进行模糊查询
select t1.* from table t1 where t1.name like concat(% ,field);
select t1.* from table t1 where t1.name like concat(field, %

补充:mysql 使用 concat 或 || 拼接字符串遇到的坑

业务需要,将几个字段拼接为一个字段进行查询,发现查完了全是空,后来在网上查询发现:
使用 || 或者 concat 拼接字符串,如果其中一个是 null,就变成 null
转为使用 concat_ws 可以避免

以上就是关于“oracle/mysql 拼接值遇到的坑及双竖线 || 和 concat 怎么使用”这篇文章的内容,相信大家都有了一定的了解,希望丸趣 TV 小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注丸趣 TV 行业资讯频道。

向 AI 问一下细节

丸趣 TV 网 – 提供最优质的资源集合!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2024-02-03发表,共计1811字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)