sql  语句氛围以下三种类型:

dml:Date Manipulation Language 数据操纵语言

DDL:Data Definition Language 数据定义语言

DCL:Data Definition Language 数据控制语言·

DML用于查询与修改数据记录,包括如下SQL 语句:

insert:添加数据到数据库中

update: 修改数据库中的数据

delete: 删除数据库中的数据

select:选择(查询)数据

select是sql语言的基础,最为重要

DDL用于定义数据库的结构,比如创建、修改或删除数据库对象,包括如下SQL语句:

create table:创建数据库表

alter table :更改表结构、添加、删除、修改列长度

trop table :删除表

create index :在表上建立索引

drop index :删除索引

DCL用来控制数据库的访问,包括如下SQL语句;

grant :授予访问权限

revoke:撤销访问权限

commit:提交事务处理

rollback:事务处理回退

savepoint:设置保存点

lock:对数据库的特定部分进行锁定

算术运算符

日期和数字使用的算术运算符:+(加) -(减) *(乘) /(除)

操作符的优先级:

乘除的优先级高于加减,统一优先级运算符从左向右执行,括号内的运算先执行

定义空值;

空值是无效的,未指定的,未知的或不可预知的值,控制不是空格或者0;包含控制的数学表达式的值都为空值。

连接符:

把列与列,列与字符连接在一起,用“||”表示,可以用来‘合成’列

字符串:

字符串可以是select 列表中的一个字符、数字,日期。

重复行:

默认情况下,查询会返回全部行,包括重复行,所以在select子句中使用关键字‘distinct’可以删除查询结果中的重复行。

过滤:

where 子句紧随from子句。

字符和日期;

字符和日期要包含在单引号中,字符大小写敏感,日期格式敏感,默认日期格式是  DD-MON月-RR.

比较运算符:

=  等于;

> 大于;

>=大于、等于;

< 小于;

<=小于、等于;

<> 不等于(也可以是!=);

between ...and  在两个值之间(包含边界) 不包含边界只用and

in(set)等于值列表中的一个;

like 模糊查询

is  null 空值

优先级:

排序:

使用order by子句排序 , asc 升序,desc 降序 。 order by子句在select语句的结尾

字符控制函数:

数字函数:

round:四舍五入;

trunc: 截断

mod: 求余

日期的数学运算;

在日期上加上或减去一个数字结果仍为日期,两个日期相减返回日期之间相差的天数,日起不允许加法运算,无意义

to_char 函数对日期的转换

格式:必须包含在单引号中而且大小写敏感,可以包含任意的有效的日期格式,日期之间用逗号隔开

通用函数:(这些函数使用于任何数据类型,同时也是用于空值)

nvl(expr1,expr2)  将空值转换成一个已知的值

nvl2(expr1,expr2,expr3)

条件表达式:

case表达式    case when.. then..

decode函数   decode(,,)

多表查询:

为了避免笛卡尔积,可以在where加入有效的连接条件

内连接: 合并具有同一列的两个以上的表的行,结果集中不包含一个表与另一个表不匹配的行。

外链接:两个表在里阿杰过程中除了返回满足连接条件的行以外还返回左(或右)外链接。没有匹配的行是,结果表中相应的列为空,外链接的where子句条件类似于内部链接,单链接条件中没有匹配行的表的列后面要加外链接运算符,即用括号括起来的加号(+)。

连接语法:

分组函数:

分组函数作用于一组数据,并对一组数据返回一个值。 分组数据: group by 子句语法,所有包含于select列表中,而未包含于组函数中的列都必须包含与group by子句中,不能再where子句中使用组函数,可以在having子句中使用组函数

组函数类型:

avg  平均数

count   计数

max  最大值

min  最小值

sum  求和

子查询;

子查询(内查询)在主查询之前一次完成,子查询的结果被主查询(外查询)使用。

约束:

约束是表级的强制规定。

not null 非空

unique 唯一约束

primary key 主键

foreign key  外键

check  检查约束

表姐约束和列级约束作用范围: 列级约束职能作用在一个列上,表级约束可以作用在多个列上也可以作用在一个列上  。 定义方式:列约束必须跟在列的定义后边,表约束不予列一起,而是单独定义 ,非空约束只能定义在列上

oracle 基础(上)的更多相关文章

  1. MySQL 总结篇 [在Oracle基础上学习的MySQL]

    一.学习环境 MySQL 5.7社区版 Navicat for MySQL 百度网盘下载链接:https://pan.baidu.com/s/1yGnznwoZ8CaMgrCsDBhKAQ 二.MyS ...

  2. Oracle基础 PL-SQL编程基础(1) 变量和常量

    一.什么是PL-SQL PL-SQL是结合了Oracle过程语言和结构化查询语言(SQL)的一种扩展语言.具体来说,PL-SQL就是在普通的SQL语句的基础上增加了编程语言的特点,将数据操作和查询语句 ...

  3. oracle 基础SQL语句 多表查询 子查询 分页查询 合并查询 分组查询 group by having order by

    select语句学习 . 创建表 create table user(user varchar2(20), id int); . 查看执行某条命令花费的时间 set timing on: . 查看表的 ...

  4. Oracle基础体系浅析

    不论是开发.管理.优化还是设计,对Oracle的基本原理的了解都是必不可少的,于是对自己最近关于Oracle的学习作出一点点的总结. 庖丁解牛之所以能做到"合于桑林之舞,乃中经首之会&quo ...

  5. oracle基础——内存管理、优化

    内存图解: 自动管理:11g:AMM   10g:ASMM SGA(system global area):由所有服务进程和后台进程共享 PGA(program global area): 由每个服务 ...

  6. oracle基础语句学习

    1.寻找公司所有部门信息 select * from dept; 2.寻找特定列 select dept_name from dept; 3.使用列别名 基本书写方法:列名 列别名 列名 as 列别名 ...

  7. 2008-03-18 22:58 oracle基础知识小结

    oracle 数据类型: 字段类型                 中文说明                                                  限制条件         ...

  8. oracle基础知识过一遍(原创)

    用户.角色.权限.表空间 create tablespace test1_tablespace datafile ‘test1file.dbf’ size 10m; create temporary  ...

  9. Oracle基础了解

    数据库: 关系型数据库 select * from 表名 非关系型数据库(做不到复杂查询) 以对象的形式进行存储 {"aaa":"ccc"}---键值对 ora ...

  10. 数据库系统入门 | Oracle Linux上部署Oracle 11g服务,并实现SSH远程登录管理

    文章目录 写在前面 一.实验内容 二.实验前期准备 1.软件目录 2.准备一些配置文件.脚本文件 三.实验方案(具体步骤) (一)在虚拟机上安装Oracle Linux (二)在Linux上安装Ora ...

随机推荐

  1. JAX-RS REST 服务结果的自动封装

    如转发请注明: 原文luyiisme博客 当使用遵循 JAX-RS 标准的框架开发REST 服务时,我们倾向于定义个(含有JAX-RS)注解接口. 服务器端负责实现该接口,而客户端是该接口的代理进行远 ...

  2. Example017简单的下拉框

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  3. 最小的 Velocity 教程

    工作以后,我越来越能体会到80/20法则的强大. 这是一个不可否认的事实,常用 20% 的技术可以解决工作中 80% 的场景. 所以我希望能介绍给你 Velocity 技术 20%,帮助你胜任 80% ...

  4. 浙江省新高中信息技术教材,将围绕Python进行并增加编程相关知识点

    2017年初消息: 浙江省信息技术新教材,即将在2017级(2017年9月入学)高中新生中开始使用. 据了解,与目前的选考(可以理解为高考科目)要求的信息技术教材由3本<信息技术基础>.& ...

  5. OpenGL的配置与搭建

    一.项目中所使用的OpenGL扩展库有: 1. freeglut-3.0.0 2. glew-2.0.0 3. glm-0.9.7.3 二.添加扩展库文件 在工程项目文件夹里面添加OpenGLExte ...

  6. 使用intelliJ创建 spring boot + gradle + mybatis站点

    Spring boot作为快速入门是不错的选择,现在似乎没有看到大家写过spring boot + gradle + mybatis在intellij下的入门文章,碰巧.Net同事问到,我想我也可以写 ...

  7. javascript事件轮询

    JavaScript 运行机制详解:再谈Event Loop 一.为什么JavaScript是单线程? JavaScript语言的一大特点就是单线程,也就是说,同一个时间只能做一件事.那么,为什么Ja ...

  8. PHP ORM笔记

    1.ORM是什么? 经常听到程序员的面试中会问到对ORM的了解,但是一直不知道ORM是个什么鬼东西,知道有一天在百度上顺带看到才发现ORM就是我们平时在框架中一直使用的数据库对象操作.ORM(Obje ...

  9. Scala关于软件的安装

    1.安装JDK 因为很多系统都会预装java,所以我们首先要测试Java版本.这里我们要求要在1.8以上.在终端输入java -version来测试版本 Windows 关于Windows,我们首先要 ...

  10. docker~Dockerfile优化程序的部署

    回到目录 一些理论 我们都知道docker这个容器工具可以帮助我们快速进行环境的部署,这对于运营人员来说,无疑是个福音,而这个工作大叔认为不应该是运营人员干的,而是由开发人员来做,因为只有你知道你干的 ...