记录量大的情况下,采用NOT IN查询,那肯定会慢的无法接受.比如: SELECT A.* FROM TABLE_A WHERE A.USER_ID NOT IN (SELECT B.USER_ID FROM TABLE_B) 目前找到的最优方法,可以秒查.示例如下,查询A表有.B表没有的DEPT_ID数据: SELECT A.* FROM TB_DEPT A, TB_DEPT_LEV B WHERE A.DEPT_ID = B.DEPT_ID(+) AND B.DEPT_ID IS NULL…
数据库版本 11.2.0.* 检查数据库是否存在此bug的脚本: Oracle用户执行此脚本 #!/bin/bash # Usage: 检查ORACLE数据库是否存在高危安全漏洞(具有查询权限用户可绕开安全限制进行数据修改) # EX: /bin/bash checkbug.sh > ./checkbug_dbIP.log # Author: AlfredZhao # Version: 1.0.0 echo -e "\n ***** CHECK: OS info *****\n"…
ORACLE10G以后版本的SQL Tuning advisor可以从以下四个方面给出优化方案 (1)为统计信息丢失或失效的对象收集统计信息   (2)考虑优化器的任何数据偏差.复杂谓词或失效的统计信息   (3)重新构建 SQL 以优化性能   (4)提出新索引建议 下面来实际测试: 1.为SQL_id创建一个STA(SQL Tuning advisor)分析任务(使用SYS用户执行) SQL> variable task_li_test varchar2(2000); SQL>exec :…
在实际开发中,我们往往需要比较两个或多个表数据的差别,比较那些数据相同那些数据不相同,这时我们有一下三种方法可以使用:1. IN或NOT IN,2. EXIST或NOTEXIST,3.使用连接查询(inner join,left join 或者 right join). 看下面的数据,我们准备选择出在depart_info中的pid在user_info中不存在的depart_信息. 有表1:depart_info 表2:user_info 方法一:采用NOT IN IN和NOT IN后面接的是一…
背景 表dbcontinfo 字段loanid,类型为varchar2(60) 表dbloanbal 字段loanid,类型为char(60) loanid字段实际长度为24位 问题 两张表dbloanbal和dbcontinfo进行left关联查询,从表的数据查询不出来,值为null,sql如下 select  n.listid,n.loanacno,n.loanid,w.bailorname from dxLoanBal n  left join dbcontinfo w on w.loan…
sql查询当天,一周,一个月数据的语句 --查询当天:   select * from info where DateDiff(dd,datetime,getdate())=0 --查询24小时内的:  select * from info where DateDiff(hh,datetime,getDate())<=24 --查询本周记录 select * from info where datediff(week,datetime,getdate())=0 --查询本月记录 select *…
使用子查询简单子查询SELECT select_listFROM tableWHERE expr operator (SELECT select_list FROM table);子查询可以出现在select,from和where之后,都是可以的.SELECT last_name, salaryFROM employeesWHERE salary > (SELECT salary FROM employees WHERE last_name = 'Abel'); SELECT last_name…
一 IF..THENIF condition THEN   statements 1;   statements 2;   ....END IF; 二 IF..THEN...ELSEIF condition THEN   statements 1;   statements 2;   ....ELSE   statements 1;   statements 2;   ....END IF; 三 IF..THEN..ELSIFIF condition1 THEN   statement1;ELS…
PS:概要.背景.结语都是日常“装X”,可以跳过直接看优化历程 环境:SQL Server 2008 R2.阿里云RDS:辅助工具:SQL 审计 概要 一个订单列表分页查询功能,单从SQL性能来讲,从几十万数据量时,适当加一些索引随便写SQL:到百来万数据量时,需要做一些SQL语句优化:再到几百万上千万的数据量情况下,很多意想不到的情况就出现了(在大部分中小公司没有专业DBA的情况下,“万能”的研发就得顶上去了). 背景 进入公司后,系统已经初具规模,已有成型的框架.随着业务的不断增长,系统功能…
Oracle SQL tuning 步骤 SQL是的全称是Structured Query Language(结构化查询语言).SQL是一个在80年代中期被使用的工业标准数据库查询语言.不要把SQL语言与商业化产品如Microsoft SQL server或开源产品MySQL相混淆.所有的使用SQL缩略词的这些都是SQL标准的一部分. 一.SQL tuning之前的调整    下面这个粗略的方法能够节省数千小时乏味的SQL tuning,因为一旦调整它将影响数以百计的SQL查询.记住,你必须优先…