linux学习-oracle查询exists之众里寻他千百度

2024-06-03 10:38

本文主要是介绍linux学习-oracle查询exists之众里寻他千百度,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

马上码特色:先来点诗句

《蜀相》

杜甫(712-770),字子美,自号少陵野老,世称“杜工部”、“杜少陵”等,汉族,河南府巩县(今河南省巩义市)人,唐代伟大的现实主义诗人,杜甫被世人尊为“诗圣”,其诗被称为“诗史”。

丞相祠堂何处寻?锦官城外柏森森。

映阶碧草自春色,隔叶黄鹂空好音。

三顾频烦天下计,两朝开济老臣心。

出师未捷身先死,长使英雄泪满襟。

linux学习-oracle查询exists之众里寻他千百度

用友NC实战运维举例:

---1、查询实时凭证(表内容见NC57数据字典)

linux学习-oracle查询exists之众里寻他千百度

附(exists、not exists、in、not in区别):

1_a、exists表示()内子查询语句返回结果不为空,where条件成立就会执行主sql语句,如果为空就表示where条件不成立,sql语句就不会执行。

1_b、not exists和exists相反,子查询语句结果为空,则表示where条件成立,执行sql语句。负责不执行。

2_a、如果查询的两个表大小相当,那么用in和exists差别不大。

2_b、如果两个表中一个较小,一个是大,则子查询表大的用exists,子查询表小的用in

3_a、如果查询语句使用了not in 那么内外表都进行全表扫描,没有用到索引;查询条件后面的语句连接字段中有null值时,not in查询的结果不正确;

3_b、而not extsts 的子查询依然能用到表上的索引。所以无论那个表大,用not exists都比not in要快。(not exists:检测有没有符合条件的记录的意思。一般放到where后面,检测子查询的结果)

其他exists实例:

表 A

ID NAME

1 NAMEA1

2 NAMEA2

3 NAMEA3

表 B

ID AID NAME

1 1 NAMEB1

2 2 NAMEB2

3 2 NAMEB3

表A和表B是1对多的关系 A.ID => B.AID

SELECT ID,NAME FROM A WHERE EXIST (SELECT * FROM B WHERE A.ID=B.AID)

执行结果为

1 NAMEA1

2 NAMEA2

SELECT ID,NAME FROM A WHERE NOT EXIST (SELECT * FROM B WHERE A.ID=B.AID)

执行结果为

3 NAMEA3

linux学习-oracle查询exists之众里寻他千百度

linux 学习——oracle之用友NC高级查询实例 更多内容请关注马上码头条号

这篇关于linux学习-oracle查询exists之众里寻他千百度的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1026758

相关文章

MySQL查询JSON数组字段包含特定字符串的方法

《MySQL查询JSON数组字段包含特定字符串的方法》在MySQL数据库中,当某个字段存储的是JSON数组,需要查询数组中包含特定字符串的记录时传统的LIKE语句无法直接使用,下面小编就为大家介绍两种... 目录问题背景解决方案对比1. 精确匹配方案(推荐)2. 模糊匹配方案参数化查询示例使用场景建议性能优

mysql表操作与查询功能详解

《mysql表操作与查询功能详解》本文系统讲解MySQL表操作与查询,涵盖创建、修改、复制表语法,基本查询结构及WHERE、GROUPBY等子句,本文结合实例代码给大家介绍的非常详细,感兴趣的朋友跟随... 目录01.表的操作1.1表操作概览1.2创建表1.3修改表1.4复制表02.基本查询操作2.1 SE

Linux中SSH服务配置的全面指南

《Linux中SSH服务配置的全面指南》作为网络安全工程师,SSH(SecureShell)服务的安全配置是我们日常工作中不可忽视的重要环节,本文将从基础配置到高级安全加固,全面解析SSH服务的各项参... 目录概述基础配置详解端口与监听设置主机密钥配置认证机制强化禁用密码认证禁止root直接登录实现双因素

MySQL数据库的内嵌函数和联合查询实例代码

《MySQL数据库的内嵌函数和联合查询实例代码》联合查询是一种将多个查询结果组合在一起的方法,通常使用UNION、UNIONALL、INTERSECT和EXCEPT关键字,下面:本文主要介绍MyS... 目录一.数据库的内嵌函数1.1聚合函数COUNT([DISTINCT] expr)SUM([DISTIN

在Linux终端中统计非二进制文件行数的实现方法

《在Linux终端中统计非二进制文件行数的实现方法》在Linux系统中,有时需要统计非二进制文件(如CSV、TXT文件)的行数,而不希望手动打开文件进行查看,例如,在处理大型日志文件、数据文件时,了解... 目录在linux终端中统计非二进制文件的行数技术背景实现步骤1. 使用wc命令2. 使用grep命令

XML重复查询一条Sql语句的解决方法

《XML重复查询一条Sql语句的解决方法》文章分析了XML重复查询与日志失效问题,指出因DTO缺少@Data注解导致日志无法格式化、空指针风险及参数穿透,进而引发性能灾难,解决方案为在Controll... 目录一、核心问题:从SQL重复执行到日志失效二、根因剖析:DTO断裂引发的级联故障三、解决方案:修复

Linux如何快速检查服务器的硬件配置和性能指标

《Linux如何快速检查服务器的硬件配置和性能指标》在运维和开发工作中,我们经常需要快速检查Linux服务器的硬件配置和性能指标,本文将以CentOS为例,介绍如何通过命令行快速获取这些关键信息,... 目录引言一、查询CPU核心数编程(几C?)1. 使用 nproc(最简单)2. 使用 lscpu(详细信

mysql查询使用_rowid虚拟列的示例

《mysql查询使用_rowid虚拟列的示例》MySQL中,_rowid是InnoDB虚拟列,用于无主键表的行ID查询,若存在主键或唯一列,则指向其,否则使用隐藏ID(不稳定),推荐使用ROW_NUM... 目录1. 基本查询(适用于没有主键的表)2. 检查表是否支持 _rowid3. 注意事项4. 最佳实

linux重启命令有哪些? 7个实用的Linux系统重启命令汇总

《linux重启命令有哪些?7个实用的Linux系统重启命令汇总》Linux系统提供了多种重启命令,常用的包括shutdown-r、reboot、init6等,不同命令适用于不同场景,本文将详细... 在管理和维护 linux 服务器时,完成系统更新、故障排查或日常维护后,重启系统往往是必不可少的步骤。本文

Oracle 数据库数据操作如何精通 INSERT, UPDATE, DELETE

《Oracle数据库数据操作如何精通INSERT,UPDATE,DELETE》在Oracle数据库中,对表内数据进行增加、修改和删除操作是通过数据操作语言来完成的,下面给大家介绍Oracle数... 目录思维导图一、插入数据 (INSERT)1.1 插入单行数据,指定所有列的值语法:1.2 插入单行数据,指