sql语句书写与阅读要点:

1>分结构阅读与书写。 拆分阅读,拆分书写再组合,由简到繁。


Oracle基础数据类型:
  4类:
    字符型:字符串
      char(最大2000), nchar(最大1000, 支持Unicode)--->固定长度
      varchar2(最大4000), nvarchar2(最大2000, 支持Unicode)--->可变长度
    数字类型
      包括整数和小数
      number(有效数字, 总位数);
      float()--->存储二进制类型的数据, 1-126位0.30103
    日期类型:时间
      date:取值范围:公元前4712年1月1号---公元9999年12月31号, 可以直接精确到秒
      timestamp(时间戳: 更精确的数据, 可以精确到毫秒)
    其它类型:大文本, 文件
      blob: 最大4G, 以二进制的形式来存放数据
      clob: 最大4G, 以字符串的形式存放

  Oracle运算符和表达式

    表达式类似于java, 可以是常量, 可以是变量, 也可以是表中的一个字段

    算术运算符(+ - * /)
    比较运算符(> >= < <= = <>/!=)
    逻辑运算符(and or not)
    字符串连接符(||)

  常用关键字
    insert into----insert into  表名 values ();

    delete-----DELETE 表名 WHERE 列名 运算符 条件

    update----UPDATE 表名 SET 列名=值 WHERE 限制条件

    select---尽量不要写*

select into

    where

    in

    like(%, _)---模糊查询,%表示0个或多个;_表示一个;

    order by----SELECT * FROM emp ORDER BY deptid DESC, ID DESC(排序,加上desc成倒序)

    group by--(group by 增强)-------结合分组函数使用 SELECT deptid FROM emp GROUP BY deptid

    having

    set

    distinct----去除一列中的重复;

    between...and(闭合区间, 即包括前面的数, 也包括后面的数)

    all-------SELECT * FROM emp e WHERE e.intime>=ALL(SELECT e1.intime FROM emp e1);

asc,desc

union all与union

-----

select jkhtbh, jkrxm, jkrzjh, htdkje, b.mcfrom grdk_sq_htxx a, bm_khjg bwhere jkhtbh in(select jkhtbhfrom grdk_dk_zzwhere dkffrq >= to_Date('20180101', 'yyyymmdd')and grbh in(select grbhfrom grdk_Sq_htxxwhere jkhtbh in(select jkhtbhfrom grdk_dk_zzwhere dkffrq < to_Date('20180101', 'yyyymmdd'))unionselect grbhfrom grdk_Sq_gtjkrwhere jkhtbh in(select jkhtbhfrom grdk_dk_zzwhere dkffrq < to_Date('20180101', 'yyyymmdd'))))and a.jgbm = b.bm;select jkhtbh, count(jkhtbh) ts, sum(dkye) jefrom (select jkhtbh, dkyefrom grdk_dk_zzwhere dkffrq <= to_date('20171231', 'yyyymmdd')         union all        select jkhtbh, sum(bjje + zczyqbjje) dkjefrom grdk_dk_hkmxwhere jkhtbh in(select jkhtbhfrom grdk_dk_zzwhere dkffrq <= to_date('20171231', 'yyyymmdd'))and ywfsrq > to_date('20171231', 'yyyymmdd')group by jkhtbh        )         where dkye <> 0group by jkhtbh;
insert into tmp_hfb_jkr_hkmx_cx (id,hkrq,pzbh,hkny,hkbj,hklx,hkfx,dkje,zlx,dkye,lxye,jkr,sfzh,hkzy,zqgjj,yhkkje,jkrzqe,pozqe)select 0,a.dkffrq ,a.rzywlsh,' ',0,0,0,a.dkffe,a.dqzlx,0,0,b.jkrxm ,b.jkrzjh ,'贷款发放' hkzy,0,0,0,0from grdk_dk_zz a inner join grdk_sq_htxx b on a.jkhtbh=b.jkhtbhwhere a.jkhtbh='09008770' and dkffrq is not nullunion all select c.id,ywfsrq,ywlsh,hkqs,bjje+ZCZYQBJJE,lxje+YQLXJE,fxje,0,0,0,0,' ',' ',nvl(d.mc,' ') hkzy,gjjzqe,bjje+lxje+fxje+wyj+ZCZYQBJJE+YQLXJE-gjjzqe,jkrzqe,pozqefrom grdk_dk_hkmx cleft join bm_gd_hkzt d on d.bm=c.hkztwhere jkhtbh='09008770' and ywfsrq is not null and hkzt in ('01','02','03','04') and trim(bczywlsh) is null order by c.id;

exists

----

select * from  grdk_tx_hk_yh a where hkrq=date '2018-05-01'
and swtyhbm like '0103' and ykbxhj=gjjtqje and exists(
select * from grdk_dk_hkmx where jkhtbh=a.jkhtbh and ywlsh='218051601_0002268866'
);
select nvl(sum(1),0) into v_cnt from dualwhere exists(select crbh from cr_jbxx_bg where crbh=v_dwbh and spzt='0' and bgxmdm='jcblbm');if v_cnt<>0 thenv_msg:='此单位已录入单位缴存比例批量调整清册!';return ;end if;

select '单位编号:【'||a.dwbh||'】单位经济类型值:【'||a.dwjjlx||'】' from cr_dw a

where not exists(select bm from bm_dwjjlx b where b.jgbm like '01'||'%' and b.bm=a.dwjjlx) and a.jgbm like '01'||'%'

 select count(*) from cr_gr a where f_sfz(a.zjhm)<>1 and a.zjlx='01' and exists(select 1 from gjzf_gr_zz where grzhzt in('01','02') and grbh=a.grbh);------------exists和in的类比

 select count(*) from cr_gr a where f_sfz(a.zjhm)<>1 and a.zjlx='01' and a.grbh in(select grbh from gjzf_gr_zz where grzhzt in('01','02') and grbh=a.grbh);------------exists和in的类比 

inner join,left outer join,right outer join

case...when...then...else   ---SELECT CASE E.SSEX WHEN 1 THEN '男' WHEN 0 THEN '女' ELSE '不详' END bb FROM EMP E;

----

insert into tmp_hfb_jcdw_jkdzhd_cx(id,jyrq,skyhmc,skyhbm,yhzhhm,zhaiyao,fse,skzhhm,skzhmc,yhjslsh,beizhu,dwzh,dwmc,fkzhhm,fkzhmc,fkyhmc,fkyhbm,lsztmc,lsztbm)select a.id,jysj,nvl(b.mc, ' ') yhmc,a.yhbm,a.yhzhhm,zhaiyao,fse,skzhhm,skzhmc,yhjslsh,' ',nvl(d.dwzh, ' ') dwzh,nvl(c.dwmc, ' ') dwmc,fkzhhm,fkzhmc,nvl(e.sszh, ' ') skzhhm,nvl(f.mc, ' ') skzhmc,casewhen hdid = 0 then'未核对'else'已核对'end,casewhen hdid = 0 then'01'else'02'endfrom im_yhzh_yemx aleft join bm_yhbm bon a.yhbm = b.bmand b.jgbm like '01%'left join cr_dw con a.fkzhmc = c.jbzhkhmcand (a.fkzhhm = c.jbzhkhyh or a.fkzhhm = c.jbzhyhzh2 ora.fkzhhm = c.jbzhyhzh3 or a.fkzhhm = c.jbzhyhzh4)left join gjzf_dw_zz don d.dwbh = c.dwbhleft join im_zhsz_dw eon a.fkzhhm = e.yhzhhmand a.fkzhmc = e.yhzhmcleft join bm_sszh fon e.sszh = f.bmwhere jysj between v_ksrq and v_jsrqand fse between v_ksjyje and v_jsjyjeand fsefx = '01'and a.yhbm like v_yhbm;
select dkffe 贷款发放额,
(case when dkhkfs='01' then '等额本息' when dkhkfs='70' then '等本等息'when dkhkfs='02' then '等本本金'when dkhkfs='03' then '一次还款付息'when dkhkfs='03' then '自由还款方式'
end) as dkhkfs  from grdk_dk_zz;

转载于:https://blog.51cto.com/11218855/2090969

oracle数据库常用的关键字总结相关推荐

  1. Oracle 数据库常用操作语句大全

    原文:Oracle 数据库常用操作语句大全 一.Oracle数据库操作 1.创建数据库      create database databasename 2.删除数据库      drop data ...

  2. 【干货】Oracle数据库常用十一大操作指令

    相关文章导读 收藏 | 超详细的Oracle19c安装步骤_XMWS-IT-CSDN博客 DBA数据库管理必备认证:ORACLE OCP 19C 教材下载 Oracle数据库常用十一大操作指令 1. ...

  3. 1 Oracle数据库常用命令

    linux下重启oracle服务步骤 1.使用Xshell连接linux服务器. 2.以oracle身份登录数据库,命令:su – oracle 3.进入Sqlplus控制台,命令:sqlplus / ...

  4. Oracle数据库常用基本SQL语法

    标题 Oracle数据库常用基本SQL语法 1.表的创建.插入,删除及Oracle和mysql的数据类型的区别 create table item (item_id number(5) primary ...

  5. Oracle Oracle数据库常用命令、Linux监听配置、oracle linux下开放1521端口

    一.Linux下Oracle数据库常用命令 oracle用户下执行: $ sqlplus system/manager @ file.sql 执行sql脚本文件 $ sqlplus system/ma ...

  6. oracle数据库提交数据关键字,Oracle数据库的关键字

    在Oracle数据库中有很多关键字,在建表时如果用这些关键字来作为字段的话会造成建表失败,有个解决方法就是在关键字上加上英文双引号(记住,不是单引号,MySQL里面关键字就用单引号,oracle不一样 ...

  7. linux查询数据库oracle端口,Oracle数据库常用命令、Linux监听配置、oracle linux下开放1521端口...

    Oracle数据库常用命令.Linux监听配置.oracle linux下开放1521端口 时间:2020-02-14 来源: 一.Linux下Oracle数据库常用命令 oracle用户下执行: $ ...

  8. Oracle数据库常用函数总结

    我本楚狂人,凤歌笑孔丘 ------唐·李白<庐山谣寄卢侍御虚舟> Oracle数据库常用函数总结 一.字符串函数 二.数值函数 三.时间函数 一.字符串函数 显示员工姓名,其中首字母大写 ...

  9. oracle数据库常用关键字以及写法

    数据库常用关键字: create table---创建一个表 创建一个表带表名(列名列的类型,列名列的类型--) create table Z_COURSE(id NUMBER, cour_code ...

最新文章

  1. Sparse low rank approximation
  2. ROS Master IP
  3. 投影幕布jsp_投影 篇一:实测亲证百元投影幕布不如白墙
  4. java类的对象无参与有参_java无参与有参以及setter和getter方法(了解)
  5. python安装教程mac-Mac 安装python 3.*新版本的详细步骤
  6. 图的两种遍历算法——BFS和DFS
  7. Java基础篇:多重继承的实现
  8. 二叉树和哈希表的优缺点对比与选择
  9. UILabel添加图片之富文本的简单应用
  10. [深度学习-总结]Deep learning中8大模型介绍与比较(LeNet5,AlexNet,VGG,Inception,MobileNets,ResNet,DenseNet,Senet)
  11. 大前端的自动化工厂(3)—— babel
  12. Java中SimpleDateFormat用法详解
  13. 狼来了!中国房地产的实质--比喻太生动了
  14. Javascript获取地址参数
  15. 觅知网ppt模板_有哪些相见恨晚的PPT模板网站?
  16. cnpm 安装文件找不到_技术员修复 win7系统word2013找不到标尺工具的处理办法 -win7系统使用教程...
  17. 回顾过去三年工作中对区块链技术的一点心得
  18. mysql 28000 远程_启用远程MySQL连接:错误1045(28000):拒绝用户访问
  19. 温州大学c语言期末试卷,2016年温州大学物理与电子信息工程学院综合卷之C语言程序设计复试笔试最后押题五套卷...
  20. 基于Java+JSP+Servlet的网上商城源码案例

热门文章

  1. 快加入3DVIA在线学习中心
  2. 如何用好碎片化时间,让思维更有效率?
  3. 高等几何——射影变换5
  4. 佳博打印机出现“出错”
  5. python jpype 调用java之坑
  6. 毕业论文排版--页眉页脚每章节不同
  7. Python中的方根运算及对数运算公式
  8. 结构体空间的大小计算
  9. 帮你抢小游戏流量红利——快手小游戏入指南
  10. 如何下载、安装并注册VMware Workstation Pro虚拟机软件