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;/*然后再在最后面的空字符里面加一个单引号,也就是'',顺便加个;*/

相关推荐
jnrjian19 分钟前
PG 切换用户 \c -
数据库·postgresql
Database_Cool_21 分钟前
内存数据库持久化方案:阿里云 Tair 持久内存型数据不丢失
数据库·阿里云
问简36 分钟前
【共享盘】ubuntu、windows
linux·windows·ubuntu
treesforest42 分钟前
高精度IP定位怎么选?从企业需求出发的选型指南
网络·数据库·tcp/ip·web安全·ip·高精度ip查询
吴声子夜歌1 小时前
Redis 5.x——多种数据类型使用场景
数据库·redis
小生不才yz1 小时前
Shell脚本精读 · S13-01 | POSIX sh 与 Bash:语法对照表
linux
阿拉斯攀登2 小时前
平台设备驱动:platform bus 与设备树
linux·嵌入式硬件·嵌入式·linux驱动·字符设备驱动
tant1an2 小时前
MySQL面试题(一)
数据库·mysql
阿拉斯攀登2 小时前
并发与同步:自旋锁、信号量、互斥锁
linux·网络·嵌入式硬件·linux驱动·字符设备驱动
公子小六2 小时前
基于.NET的Windows窗体编程之WinForms图像控件
windows·microsoft·c#·.net·winforms