首页 > 数据库技术 > 详细

数据库 concat 与 ||

时间:2019-08-13 21:27:20      阅读:106      评论:0      收藏:0      [点我收藏+]

mysql中用concat,oracle中concat和||都有,都是做字符串拼接的

oracle简单实例:

1.建表

CREATE TABLE tab1 (col1 VARCHAR2(6), col2 CHAR(6),
col3 VARCHAR2(6), col4 CHAR(6) );

INSERT INTO tab1 (col1, col2, col3, col4)
VALUES (‘abc‘, ‘def ‘, ‘ghi ‘, ‘jkl‘);

INSERT INTO tab1 (col1, col2, col3, col4)
VALUES (‘1a‘, ‘456 ‘, ‘321 ‘, ‘234‘);

INSERT INTO tab1 (col1, col2, col3, col4)
VALUES (‘45345‘, ‘656 ‘, ‘65 ‘, ‘a1‘);

2.简单运用

select*from tab1;
SELECT * from tab1 t where t.col1 like ‘%a%‘; //模糊查询
SELECT * from tab1 t where t.col1 like ‘%‘ || ‘a‘ || ‘%‘;//模糊查询
SELECT * from tab1 t where t.col1 like concat(concat(‘%‘,‘a‘),‘%‘);//模糊查询
SELECT col1||col2||col3||col4 "Concatenation" FROM tab1;
SELECT ‘col1=‘ || t.col1 || ‘,col2=‘ || t.col2 "字段拼接" FROM tab1 t; //也就是当我们需要自定义查询结果的时候,使用||拼接。

3.项目运用

生成由各种字段拼接的字段然后更新表

UPDATE sr_main
SET mjjzbh = ‘ZJDB‘ || substr(xzqh, 0, 6) || to_char(sysdate, ‘yyyymm‘) ||
(SELECT (CASE
WHEN max(xlh) IS NULL THEN
10001
ELSE
(max(xlh) + 1)
END) AS new_xlh
FROM (SELECT SUBSTR(mjjzbh, -5) AS xlh
FROM sr_main
WHERE mjjzbh LIKE
‘ZJDB‘ || ‘%‘ || TO_CHAR(SYSDATE, ‘yyyymm‘) || ‘%‘
GROUP BY mjjzbh))
WHERE pk_sr_main = ‘$pkid$‘

 

 

 

数据库 concat 与 ||

原文:https://www.cnblogs.com/tongcc/p/11347370.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!