SQL强化(二) 在Oracle 中写代码
一 : 关于查询中的转换
-- 字符串转换 一 : decode 函数 转换
SELECT
DECODE (
PROTYPE.PRO_TYPE_DATE,
'L',
'长',
'm',
'短',
'默认值'
)
FROM
PROTYPE
-- 字符串转换 二 : case 转换
SELECT
T1.PRO_TYPE_ID,
T1.PRO_TYPE_NAME,
CASE T1.PRO_TYPE_DATE
WHEN 'S' THEN
'短'
WHEN 'L' THEN
'长'
ELSE
'默认值'
END AS text
FROM
PROTYPE t1

case when then 有点类似于java中的switch case
二 : 在Oracle 中写代码
1 ,什么是代码块
2 ,变量定义 declare
3 , 代码块开始 begin
4, 代码块结束 end
5 , 赋值 := / 通过表字段给变量赋值 into
declare 声明的意思 定义变量用的
begin 代表代码块开始
end 代表代码块结束
:= 给变量赋值
dbms_output.put_line('打印并换行')
dbms_output.put('打印不换行')
定义变量 a = 10 ,b = 10 并分别打印a和b
DECLARE A NUMBER (10) := 10 ; b NUMBER (10) ;
BEGIN
b := 100 ; dbms_output.put_line (A) ; dbms_output.put_line (b) ;
END ;
结果 :

if 条件 then 执行; end if;
DECLARE A NUMBER (10) := 10 ; b NUMBER (10) ;
BEGIN
b := 100 ;
IF b = 100 THEN
b := 13 ;
END
IF ; dbms_output.put_line (A) ; dbms_output.put_line (b) ;
END ;
输出结果 :

if 条件 then 执行; elsif 条件 then 执行; else 执行; end if;
DECLARE A NUMBER (10) := 10 ; b NUMBER (10) ;
BEGIN
b := 99 ;
IF b = 100 THEN
b := 13 ;
ELSIF b = 99 THEN
b := 16 ;
ELSE
b := 17 ;
END
IF ; dbms_output.put_line (A) ; dbms_output.put_line (b) ;
END ;
输出结果为 16

loop 循环 <<oneloop>> 定义循环名称,循环嵌套时必须要定义,单个loop循环可以不需要 exit 循环名(没有可以不写) when 跳出循环的条件
|| 字符串拼接 ,相当于Java中的+
DECLARE A NUMBER (10) := 10 ;
BEGIN
<< oneloop >> loop dbms_output.put_line ('打印' || 'a=' || A) ; A := A - 1 ; exit oneloop
WHEN A <= 0 ;
END loop ;
END ;
输出结果 :

SQL强化(二) 在Oracle 中写代码的更多相关文章
- FLASH CC 2015 CANVAS (二)html中写JS调用flash中的元件、函数、变量
注意 此贴 为个人边“开荒”边写,所以不保证就是最佳做法,也难免有错误! 正式教程会在后续开始更新 当你导出第一个canvas后,你会在保存fla的文件夹里 (每个项目默认位置)看到 如下文件,(请先 ...
- 判断一个数据是否存在于一个表中,Oracle中写自定义函数
create or replace function isExist(data in DataTypes) --DataTypes 为表中该数据的类型return Numberisv_flag num ...
- 同一个sql在不同的oracle中执行时间不一样
最近因为某些原因不得不重新配置服务器的环境,当然就是一些简单的程序运行环境,包括tomcat .oracle和其他的一些.原本觉得还蛮简单的东西,但是当我部署完成后在运行程序的过程中发现了一些隐性因数 ...
- 在myeclipse10.7.1中写代码有很多红x
代码没问题,但是很多代码前都有红x.在doc中执行都没有问题 jdk版本不对应 //第一步:菜单栏Window--Preferences--Java--Installed JREs--右边Add ...
- Winform 中写代码布局中遇到的控件遮盖问题
在winform中编程时,需要动态向主窗体中增加菜单栏和用户控件,菜单栏需要设置DockStyle为Top ,而设置用户控件的DockStyle为Fill,之后在加载的时候,出现了菜单栏遮盖用户控件的 ...
- ORACLE 中rownum和row_number()的使用区别(可指定取sql结果集的第几个数据)
这篇文章主要介绍了oracle中rownum和row_number()的使用方法以及区别和联系,十分的详细,有需要的小伙伴可以参考下. row_number()over(partition by ...
- Oracle中的DDL,DML,DCL总结
转自http://blog.csdn.net/w183705952/article/details/7354974 DML(Data Manipulation Language,数据操作语言):用于检 ...
- oracle中rownum和row_number()
row_number()over(partition by col1 order by col2)表示根据col1分组,在分组内部根据col2排序,而此函数计算的值就表示每组内部排序后的顺序编号(组内 ...
- Oracle中的数据字典技术及常用数据字典总结
一.Oracle数据字典 数据字典是Oracle存放有关数据库信息的地方,其用途是用来描述数据的.比如一个表的创建者信息,创建时间信息,所属表空间信息,用户访问权限信息等.当用户在对数据库中的数据进行 ...
随机推荐
- Android 再按一次退出程序三种办法
在Xamarin android中双击返回键退出程序的第一种做法 思路就是当用户按下返回键的时间超过两秒就退出,根据Keycode.Back判断用户按下的是返回键,重写这个OnKeyDown Date ...
- pstree 命令详解
作用: 以命令树状图的方式展现进程之间的派生关系, 显示效果比较直观. 选项: -a 显示每个程序的完整指令, 包含路径, 参数或者是常驻服务的标志 -c 不使用精简标示法 -h 列出树状图,特别标明 ...
- 让 kibana 后台启动的方案
为了解决启动kibana后关闭shell终端kibana自动关闭的问题,记录2种解决方案,试验后均可行. 假设kibana安装的目录为 /usr/local/kibana/ 方案一: 使用nohup ...
- input 上传图片显示预览、调用摄像头,ios和Android的兼容性解决
html代码: <img id="pic" src="img/pic.png"/> </span><input id=" ...
- centos7 安装solr
1 下载solr安装包 下载6.4.1版本 2.创建 存放数据的文件夹 solr_data 和 安装目录 solr_installation 3.进入solr的bin目录执行 /install_sol ...
- zabbix web监控模板
问题关键:宏变量 {HOST.NAME} 配置 我直接在 Linux OS这个模板中添加的,都随意: 效果 加个报警 以上.
- jQuery 核心函数 (十一)
函数 描述 jQuery() 接受一个字符串,其中包含了用于匹配元素集合的 CSS 选择器. jQuery.noConflict() 运行这个函数将变量 $ 的控制权让渡给第一个实现它的那个库.
- vim 查找的技巧
vim查找时如果有多个特殊字符需要转义容易出错还繁琐. 要确保要查找的 URL 仍保存在寄存器 u 中.然后,我们输入 / 或者 ? 调出查找提示符,二者均能正确工作.最后,要依次输入原义开关 \V ...
- 自学Aruba2.3-Aruba Web UI --Configuration面板介绍
点击返回:自学Aruba之路 自学Aruba2.3-Aruba Web UI --Configuration面板介绍 此文只展示重要面板,大部分通俗易懂就不过多语言介绍, 后期配置实例中再结合理论知识 ...
- JavaScript(六)函数
函数的声明方式 function name () {} 函数声明 var name = function(){} 函数表达式 所有函数都有返回值 未return 的函数 返回值 是 unde ...