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

相关推荐
Elastic 中国社区官方博客1 小时前
让大模型思考,让小模型执行:在 Elastic Workflows 中拆分 LLM 成本
大数据·运维·数据库·人工智能·elasticsearch·ai
Faith_xzc1 小时前
一条 SQL 顶一条 Flink 链路?Doris Streaming Job 持续导入全景解析
大数据·数据库·sql·flink
爱学习的小白柏1 小时前
【AI问数技术】多Agent协同架构:查询规划/SQL生成/洞察分析/报告生成
java·网络·人工智能·windows·sql·架构·llama
fb_123453 小时前
Linux三剑客超全精讲(grep+sed+awk)零基础入门|正则+实战面试题
linux·运维·服务器
这个DBA有点耶4 小时前
多模数据库深度解读:从“多库拼装”到“一库多能”的架构演进
数据库·mysql·dba
火车叼位4 小时前
Bash 实现 IDE 式补全的组件与配置
linux·运维
潘正翔4 小时前
k8s高级_调度器Deployment
linux·运维·云原生·容器·kubernetes·jenkins·devops
H_oRIZoN_4 小时前
Linux入门DAY27(文件IO(系统调用)详解|open/read/write/lseek)
java·linux·服务器
程序员夏洛4 小时前
MySQL 默认的事务隔离级别是什么?为什么选择这个级别?
数据库·mysql
艺术留白4 小时前
MokaTest使用篇-SQL接口
数据库·sql