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

相关推荐
ulias2124 小时前
Linux系统中的权限问题
linux·运维·服务器
沃尔威武5 小时前
数据库 Sinks(.net8)
数据库·.net·webview
mzhan0175 小时前
Linux: lock: preempt_count 是一个线程级别的变量
linux·lock
Dreamboat¿6 小时前
SQL 注入漏洞
数据库·sql
韭菜钟6 小时前
WIndows下一键切换网卡IP脚本
windows·网络协议·tcp/ip
Dream of maid6 小时前
Linux(下)
linux·运维·服务器
齐鲁大虾6 小时前
统信系统UOS常用命令集
linux·运维·服务器
Dontla6 小时前
go语言Windows安装教程(安装go安装Golang安装)(GOPATH、Go Modules)
开发语言·windows·golang
ZzzZZzzzZZZzzzz…6 小时前
Nginx 平滑升级:从 1.26.3 到 1.28.0,用户无感知
linux·运维·nginx·平滑升级·nginx1.26.3·nginx1.28.0
曹牧7 小时前
Oracle数据库中,将JSON字符串转换为多行数据
数据库·oracle·json