oracle 拼接语句怎么写?

||的妙用,字符串和变量列名之间都得用||分隔,oracle等数据库两个单引号输出一个单引号,因为如果只写了一个'的话 他会和最近的单引号被数据库认为是组成了一个空字符串,因此需要用两个单引号来表示这是个单引号

查询列间用,分隔:

select empno||','||ename from emp;

||用于拼接语句,下面是写的每一步思路,可以沿用于其他的拼接:

select '' from emp;/*输出一个空的字符串*/

select 'select * from emp where ename=' from emp;/*输出固定的字符串*/

select 'select * from emp where ename='||ename from emp;/*将固定的字符串和变量拼接*/

select 'select * from emp where ename='''||ename from emp;/*周所周知,oracle等数据库两个单引号输出一个单引号,因此这里再||前加了''*/

select 'select * from emp where ename='''||ename||'' from emp;/*还差右半边的单引号,先在变量右边加||,然后再||右边加'',这里的''表示拼了空字符*/

select 'select * from emp where ename='''||ename||''';' from emp;/*然后再在最后面的空字符里面加一个单引号,也就是'',顺便加个;*/

相关推荐
十碗饭吃不饱3 小时前
MySQL InnoDB RR 隔离下二级索引临键锁引发 INSERT 锁超时 全链路解析
java·数据库·mysql
Gh0st_Lx3 小时前
【2】MySQL 为什么使用 B+树
数据库·b树·mysql
我不会插花弄玉3 小时前
8. 复合查询【由浅入深-MySQL】
android·数据库·mysql
北风toto3 小时前
数据库模式分解:如何判定“保持函数依赖”?
数据库
zbyyd3 小时前
Linux驱动:SPI子系统与ADXL345三轴加速度传感器驱动开发
linux·驱动开发·arm
coward913 小时前
全志和瑞芯微平台反编译设备树
linux·嵌入式硬件
zbyyd3 小时前
Linux驱动开发:Misc混杂设备与设备树实战
linux·驱动开发
业余程序员plus3 小时前
RDMA-Verbs-软件架构(二)
linux·rdma·rocev2·mlx5·verbs·uverbs·libibverbs
极限挑战哥4 小时前
深度拆解团购多商户分账系统:规则引擎 + 账户体系 + 逆向清算全解析
网络·数据库·人工智能
数据狐(Datafox)4 小时前
一文读懂京东商品详情 API:返回字段解读与 JSON 样例
开发语言·数据库·爬虫·json