Oracle:ORA-00904: “10“: 标识符无效报错详解

 1.报错Oracle语句如下

SELECT YK_CKGY.ID,YK_CKGY.DJH,YK_CKGY.BLRQ,YK_CKGY.ZBRQ,YK_CKGY.SHRQ,YK_CKGY.YT,YK_CKGY.ZDR,YK_CKGY.SHR,YK_CKGY.BZ,YK_CKGY.JZRQ,YK_CKGY.ZT,YK_CKGY.CKLX,(case YK_CKGY.CKLXwhen '09' then'药房调借'when '02' then'科室退药'when '03' then'损耗出库'when '04' then'科室领药'when '06' then'药房退药'when '07' then'药房领药'when '88' then'领药计划'when '08' then'过期出库'when '10' then'其它出库'end) AS LXMC,YK_CKGY.BMNBBH,(select CO_QX_XTBM.BMMCfrom CO_QX_XTBMwhere YK_CKGY.BMNBBH = CO_QX_XTBM.BMNBBH) as DCBMMC,(select CO_QX_XTBM.BMMCfrom CO_QX_XTBMwhere YK_CKGY.DRBM = CO_QX_XTBM.BMNBBH) as DRBMMC,YK_CKGY.DRBM,(select sum(yk_ckmx.cksl * YK_CKMX.CBJ)from yk_ckmxwhere gyid = YK_CKGY.id) as jhjeFROM YK_CKGYWHERE 1 = 1and substr(YK_CKGY.BLRQ, 1, 10) >= '2024/12/07'and substr(YK_CKGY.BLRQ, 1, 10) <= '2025/01/07'and YK_CKGY.JZRQ is nulland (YK_CKGY.DRBM = 2202)and YK_CKGY.ZT = 2 andYK_CKGY.jgdm = '22'and YK_CKGY.CKLX IN ("04", "07", "03", "02", "06", "10")

2.报错原因: 

Oracle 数据库中,双引号用于引用列名、表名等标识符(区分大小写)。但是,在 SQL 中,数字或字符串应该使用单引号。因此,IN ("04", "07", "03", "02", "06", "10") 中的双引号应该替换为单引号。

3:修正: 

 IN ('04', '07', '03', '02', '06', '10')

4.其他潜在问题:

substr(YK_CKGY.BLRQ, 1, 10) 用于截取日期的前 10 位,如果 BLRQ 是日期字段,可以考虑直接使用 TO_DATE 函数来进行日期比较,避免使用 substr 来处理日期字段。

SELECT YK_CKGY.ID,YK_CKGY.DJH,YK_CKGY.BLRQ,YK_CKGY.ZBRQ,YK_CKGY.SHRQ,YK_CKGY.YT,YK_CKGY.ZDR,YK_CKGY.SHR,YK_CKGY.BZ,YK_CKGY.JZRQ,YK_CKGY.ZT,YK_CKGY.CKLX,(case YK_CKGY.CKLXwhen '09' then'药房调借'when '02' then'科室退药'when '03' then'损耗出库'when '04' then'科室领药'when '06' then'药房退药'when '07' then'药房领药'when '88' then'领药计划'when '08' then'过期出库'when '10' then'其它出库'end) AS LXMC,YK_CKGY.BMNBBH,(select CO_QX_XTBM.BMMCfrom CO_QX_XTBMwhere YK_CKGY.BMNBBH = CO_QX_XTBM.BMNBBH) as DCBMMC,(select CO_QX_XTBM.BMMCfrom CO_QX_XTBMwhere YK_CKGY.DRBM = CO_QX_XTBM.BMNBBH) as DRBMMC,YK_CKGY.DRBM,(select sum(yk_ckmx.cksl * YK_CKMX.CBJ)from yk_ckmxwhere gyid = YK_CKGY.id) as jhjeFROM YK_CKGYWHERE 1 = 1and substr(YK_CKGY.BLRQ, 1, 10) >= '2024/12/07'and TO_DATE(substr(YK_CKGY.BLRQ, 1, 10), 'YYYY/MM/DD') <=TO_DATE('2025/01/07', 'YYYY/MM/DD')and YK_CKGY.JZRQ is nulland (YK_CKGY.DRBM = 2202)and YK_CKGY.ZT = 2and YK_CKGY.jgdm = '22'and YK_CKGY.CKLX IN ('04', '07', '03', '02', '06', '10')

5.总结 

  1. 使用单引号来定义字符串值,例如 IN ('04', '07', '03', '02', '06', '10')
  2. 如果 BLRQ 字段是日期类型,考虑直接使用 TO_DATE 进行日期比较,而不使用 substr 来截取字符串。

 补充:

在 Vue 组件中使用正则替换双引号:

使用 replace() 替换双引号为单引号:

let str = '("04", "07", "03", "02", "06", "10")';
str = str.replace(/"([^"]+)"/g, "'$1'");

解释:

  1. 正则表达式 /\"([^\"]+)\"/g

    • \" 匹配双引号。
    • ([^\"]+) 匹配双引号内的内容,并捕获它。
    • $1 表示替换成捕获的内容。
    • g 标志表示全局匹配,即替换字符串中的所有双引号。
  2. replace() 方法

    • 将匹配到的内容替换为单引号包裹的内容。

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/65502.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux 磁盘管理命令:使用xfs 管理命令

文章目录 Linux磁盘管理命令使用xfs 管理命令1.命令说明2&#xff0e;建立 XFS 文件系统4&#xff0e;调整 XFS 文件系统各项参数5&#xff0e;在线调整 XFS 文件系统的大小6&#xff0e;暂停和恢复 XFS 文件系统7&#xff0e;尝试修复受损的 XFS 文件系统8&#xff0e;备份和恢…

《Spring Framework实战》3:概览

欢迎观看《Spring Framework实战》视频教程 Spring Framework 为基于现代 Java 的企业应用程序提供了全面的编程和配置模型 - 在任何类型的部署平台上。 Spring 的一个关键要素是应用程序级别的基础设施支持&#xff1a;Spring 专注于企业应用程序的 “管道”&#xff0c;以便…

借助免费GIS工具箱轻松实现las点云格式到3dtiles格式的转换

在当今数字化浪潮下&#xff0c;地理信息系统&#xff08;GIS&#xff09;技术日新月异&#xff0c;广泛渗透到城市规划、地质勘探、文化遗产保护等诸多领域。而 GISBox 作为一款功能强大且易用的 GIS 工具箱&#xff0c;以轻量级、免费使用、操作便捷等诸多优势&#xff0c;为…

均值滤波从图像复原角度的解释

廖老师说若将图像生成看作一个随机过程&#xff0c;均值滤波&#xff08;Mean Filtering&#xff09;可以视为在高斯噪声模型下的线性最小均方估计&#xff08;Linear Minimum Mean Squared Error, LMMSE&#xff09;或者极大似然估计&#xff08;Maximum Likelihood Estimatio…

高等数学学习笔记 ☞ 一元函数微分的基础知识

1. 微分的定义 &#xff08;1&#xff09;定义&#xff1a;设函数在点的某领域内有定义&#xff0c;取附近的点&#xff0c;对应的函数值分别为和&#xff0c; 令&#xff0c;若可以表示成&#xff0c;则称函数在点是可微的。 【 若函数在点是可微的&#xff0c;则可以表达为】…

linux之自动挂载

如果想要实现自动挂载&#xff0c;应该挂在客户端&#xff01;&#xff01;&#xff01;&#xff01;&#xff01; 客户端&#xff1a; [rootlocalhost ~]# yum install nfs-utils -y &#xff08;下载软件&#xff09; [rootlocalhost ~]# systemctl start nfs-utils.servic…

用户界面软件01

Jens Coldewey 著&#xff0c;Tom.X 译 本文中的模式语言逐步深入地探讨用户界面架构的设计&#xff0c;它基于人机工程学&#xff0c;足以形成一套完整的体系。如果你对这方面有兴趣&#xff0c;请参考[Tog92]&#xff0c;[Coo95]和[Col95]。 本文不讨论用户界面的布局&…

Spring整合SpringMVC

目录 【pom.xml】文件&#xff1b; 新建【applicationContext.xml】文件 新建【springmvc.xml】文件&#xff1b; 配置【src/main/webapp/WEB-INF/web.xml】文件&#xff1b; 新建【com.gupaoedu.service.IUserService】&#xff1b; 新建【com.gupaoedu.service.impl.Use…

【数据结构-堆】2233. K 次增加后的最大乘积

给你一个非负整数数组 nums 和一个整数 k 。每次操作&#xff0c;你可以选择 nums 中 任一 元素并将它 增加 1 。 请你返回 至多 k 次操作后&#xff0c;能得到的 nums的 最大乘积 。由于答案可能很大&#xff0c;请你将答案对 109 7 取余后返回。 示例 1&#xff1a; 输入&…

2025.1.8(c++对c语言的扩充——堆区空间,引用,函数)

笔记 上一笔记接续&#xff08;练习2的答案&#xff09; 练习&#xff1a;要求在堆区连续申请5个int的大小空间用于存储5名学生的成绩&#xff0c;分别完成空间的申请、成绩的录入、升序排序、成绩输出函数以及空间释放函数&#xff0c;并在主程序中完成测试 要求使用new和d…

(长期更新)《零基础入门 ArcGIS(ArcScene) 》实验七----城市三维建模与分析(超超超详细!!!)

城市三维建模与分析 三维城市模型已经成为一种非常普遍的地理空间数据资源,成为城市的必需品,对城市能化管理至关重要。语义信息丰富的三维城市模型可以有效实现不同领域数据与IS相信息的高层次集成及互操作,从而在城市规划、环境模拟、应急响应和辅助决策等众多领域公挥作用、…

在离线环境中安装 `.rpm` 包的步骤

在一些环境中&#xff0c;可能无法直接通过网络安装软件包。特别是在没有互联网连接的情况下&#xff0c;我们仍然可以手动下载 .rpm 安装包并进行离线安装。本文将介绍如何在离线环境中安装多个 .rpm 包&#xff0c;确保软件的顺利安装和依赖关系的处理。 1. 将 .rpm 文件复制…

【人工智能开题报告】

人工智能开题报告 第一步 12 篇文献 应用&#xff08;研究&#xff09;领域历史、现状、发展趋势以及对社会、环境、健康、安全等方面的影响分析第二步 15篇 应用&#xff08;研究&#xff09;领域中的 工作成果简述2.1 国外 6篇2.2 国内 9篇 第三步 9/10篇 研究方案 的分析与选…

Harmony开发【笔记1】报错解决(字段名写错了。。)

在利用axios从网络接收请求时&#xff0c;发现返回obj的code为“-1”&#xff0c;非常不解&#xff0c;利用console.log测试&#xff0c;更加不解&#xff0c;可知抛出错误是 “ E 其他错误: userName required”。但是我在测试时&#xff0c;它并没有体现为空&#xff0c;…

(2023|NIPS,LLaVA-Med,生物医学 VLM,GPT-4 生成自指导指令跟随数据集,数据对齐,指令调优)

LLaVA-Med: Training a Large Language-and-Vision Assistant for Biomedicine in One Day 目录 LLaVA-Med: Training a Large Language-and-Vision Assistant for Biomedicine in One Day 0. 摘要 1. 简介 2. 相关工作 3. 生物医学视觉指令数据 4. 将多模态对话模型适配…

什么是网络安全攻防演练,即红蓝对抗?

定义与目的 定义&#xff1a;网络安全攻防演练是一种模拟真实网络攻击和防御场景的活动&#xff0c;通过组织专业的攻击队伍&#xff08;红队&#xff09;和防御队伍&#xff08;蓝队&#xff09;进行对抗&#xff0c;来检验和提升组织的网络安全防御能力、应急响应能力和安全运…

(概率论)无偏估计

参考文章&#xff1a;(15 封私信 / 51 条消息) 什么是无偏估计&#xff1f; - 知乎 (zhihu.com) 首先&#xff0c;第一个回答中&#xff0c;马同学图解数学讲解得很形象&#xff0c; 我的概括是&#xff1a;“注意&#xff0c;有一个总体的均值u。然后&#xff0c;如果抽样n个&…

国产游戏崛起,燕云十六移动端1.9上线,ToDesk云电脑先开玩

游戏爱好者的利好消息出新了&#xff01;网易大型武侠仙游《燕云十六声》正式官宣&#xff0c;移动端要在1月9日正式上线了&#xff01;你期待手游版的燕云吗&#xff1f;不妨评论区留言说说你的看法。小编分别花了几个小时在台式机电脑和手机上都试了下&#xff0c;欣赏画面还…

一文大白话讲清楚ES6代理Proxy和反射Reflect

文章目录 一文大白话讲清楚ES6代理Proxy和反射Reflect1. 你当过老板么2.代理Proxy2.1 get(target,propKey,receiver)//获取对象的属性2.2 set(target,propKey,newValue,receiver)//设置属性的值2.3 has(target,propKey)//代理查询属性操作&#xff0c;propKey in obj的操作2.4 …

VS2022引入sqlite数据库交互

法一&#xff1a;用官网编译好的动态库(推荐) 下载所需文件 sqlite官网地址&#xff1a;https://www.sqlite.org/howtocompile.html 下载以下的2个压缩包 第一个压缩包 sqlite-amalgamation-xxxx.zip&#xff0c;xxxx是版本号,保持一致即可&#xff0c;这里面有sqite3.h 第…