说明:语句中说到的“表”,以及表中有哪些“列”自行脑补......重要的是理解概念,能看懂语句代表的含义就可以了~DQL-数据查询语句:1.* 表示所有列SELECT * FROM emp;2.指定查询的列SELECT ename,job,sal FROM emp;3.可以在查询语句中对数据进行运算SELECT ename,job,sal,12*sal FROM emp;--对于数字类型的数据可以进行数学运算:+ - * /--对于日期类型的数据可以进行加减运算,表示加上或者减去天数SELECT ename,hiredate,hired...
查询语句pl/sql中用F5优化语句ORACLE的explain plan工具的作用只有一个,获取语句的执行计划1.语句本身并不执行,ORACLE根据优化器产生理论上的执行计划2.语句的分析结果存放在表PLAN TABLE中select * from TABLE where NOWTIME >=to_date(‘20160101‘,‘yyyy-mm-dd‘) and NOWTIME < to_date(‘20160102‘,‘yyyy-mm-dd‘)通过截图显示select语句是走索引的“INDEXRANGE SCAN”后边是索引名称,cost显示成本,走索引成本是...
oracle存储过程中使用了类似如下语句,当查询不到记录时,会触发"数据未发现"异常SELECT col INTO v_col FROM t_table来自网络的方法1)使用MAX函数
SELECTMAX(col) INTO v_col FROM t_table(2) 使用异常处理
BEGINSELECT col INTO v_col FROM t_table;EXCEPTION WHEN NO_DATA_FOUND THENv_col:=0;
END; 我的方法,利用了dual是单行单列虚拟表select b.ID,b.VALUE from dual a
leftjoin T_myTable b on1=1and b.NAME=‘xxxxx‘where ...
You perform a Flashback Query by using a SELECT statementwith an AS OF clause.You use a flashback query to restrieve data as it existed at some time in the past.The query explicitly references a past time by menasof timestamp or SCN.It returns committed data that was current at that point intime.
通过执行一个带as of 子句的select语句进行闪回查询,可以闪回检索过去某个时间存在的数据,一个闪回查询被用来...
oracle树查询的最重要的就是select…start with…connect by…prior语法了。依托于该语法,我们可以将一个表形结构的以树的顺序列出来。在下面列述了oracle中树型查询的常用查询方式以及经常使用的与树查询相关的oracle特性函数等,在这里只涉及到一张表中的树查询方式而不涉及多表中的关联等。1、准备测试表和测试数据12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565...
1. 基本select语句 1)查看当前用户 show user USER 为 "SCOTT" 2)查询当前用户下的表 SQL> select * from tab; TNAME TABTYPE CLUSTERID ------------------------------ ------- ---------- DEPT TABLE EMP ...
CASE 语句CASE selector WHEN value1 THEN action1; WHEN value2 THEN action2; WHEN value3 THEN action3; ….. ELSE actionN;END CASE;CASE表达式DECLARE temp VARCHAR2(10); v_num number;BEGIN v_num := &i; temp := CASE v_num WHEN 0 THEN ‘Zero‘ WHEN 1 THEN ‘One‘ WHEN 2 THEN ‘Two‘ ELSE NULL END; dbms_output.put_line(‘v_num = ‘||temp);END;/CASE搜索语句CASE ...
oracle树查询的最重要的就是select…start with…connect by…prior语法了。依托于该语法,我们可以将一个表形结构的以树的顺序列出来。在下面列述了oracle中树型查询的常用查询方式以及经常使用的与树查询相关的oracle特性函数等,在这里只涉及到一张表中的树查询方式而不涉及多表中的关联等。1、准备测试表和测试数据12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565...
oracle树查询的最重要的就是select…start with…connect by…prior语法了。依托于该语法,我们可以将一个表形结构的以树的顺序列出来。在下面列述了oracle中树型查询的常用查询方式以及经常使用的与树查询相关的oracle特性函数等,在这里只涉及到一张表中的树查询方式而不涉及多表中的关联等。1、准备测试表和测试数据12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565...
1.select 查询表中的数据 select*from stu; ---查询stu表所有的数据,*代表所有2.dual ,伪表,要查询的数据不存在任何表中时使用 select sysdate from dual; ----查询系统当前的时间3.concat 连接两个字符串为一个字符串 select concat(‘孤舟蓑笠翁‘,‘独钓寒江雪‘)str from dual; ---str为函数字段名(自取) 等价操作:|| (连接符) select ‘莫等闲,‘||‘白了少年头,‘||‘空悲切。‘ str from dual; 4.len...
oracle树查询的最重要的就是select…start with…connect by…prior语法了。依托于该语法,我们可以将一个表形结构的以树的顺序列出来。在下面列述了oracle中树型查询的常用查询方式以及经常使用的与树查询相关的oracle特性函数等,在这里只涉及到一张表中的树查询方式而不涉及多表中的关联等。1、准备测试表和测试数据12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565...
create or replace
PROCEDURE UPDATE_RECORDCODE iscursor location_data is select * from location where remark in('952701','9527008','952705');--申明游标serviceCode NUMBER:=1;
BEGINfor l in location_data loop --遍历游标BEGIN--业务处理UPDATE SERIAL_CODE SET CUR_NUMBER = CUR_NUMBER +1 where AREA_CODE=l.area_code and LOC_TYPE=l.type;select CUR_NUMBER into serviceCode from SERIAL_CODE where AREA_CODE=l...
SELECT last_name ||‘ is a ‘||job_id AS "Employee Details"FROM employees; 其它引号(q)运算符许多SQL语句都在表达式或条件中使用字符文字。如果文字本身包含一个单引号,则可以使用引号(q)运算符并选择自己的引号分隔符。
可以选择所需要的任何分隔符,单字节或多字节分隔符,或者下列字符对中的任何一种:[ ]、{ }、( )或< >。
在显示的示例中,字符串包含一个单引号,该单引号通常被解释为字符串的分隔符。但是,通过使用...
CASE sex
WHEN ‘1‘ THEN ‘男‘
WHEN ‘2‘ THEN ‘女‘
ELSE ‘其他‘ END
--Case搜索函数
CASE WHEN sex = ‘1‘ THEN ‘男‘
WHEN sex = ‘2‘ THEN ‘女‘
ELSE ‘其他‘ END
这两种方式,可以实现相同的功能。简单Case函数的写法相对比较简洁,但是和Case搜索函数相比,功能方面会有些限制,比如写判断式。 还有一个需要注意的问题,Case函数只返回第一个符合条件的值,剩下的Case部分将会被自动忽略。
--比...
表的列名比较多的时候,手工一个个的写列名比较麻烦,这个函数可以让人偷偷懒
create or replace function f_GetCols(p_TableName in varchar2/*获取表中所有列名 前后添加select from*/) RETURN varchar2isResult varchar2(2000);v_cnts number;v_strTabName varchar2(200);BEGIN v_strTabName:=upper(p_tablename); select count(1) into v_cnts from user_tables where table_name=v_strTabName; if v_cnts>0 then Result:=...