SQL常用指令集(Oracle)
1、 Select rownum(oracle) top(mysql):
用于规定返回指定数目的值
Where roenum < number
2、 Like
用于在where子句搜索指定模式
Where 列名 [NOT] like ‘%string’ [ESCAPE]’\%(_)’
Where 列名 [NOT] like ‘_string’ [ESCAPE]’\%(_)’
%表示:任意长度
select *
from STUDENT
where SNAME like '张%'
_表示任意单个字符
select *
from STUDENT
where SNAME like '张_'
3、 通配符:与like一起使用,如上
4、 In
用于where子句中规定某一字段满足多个值的条件(可用于嵌套使用sql语句)
select *
from STUDENT
where id in (1,9,10)
嵌套使用
select *
from STUDENT
where id in (
select ID
from STUDENT
where SNAME like '张%' or SNAME like '刘%'
)
5、 Between
用于where子句中操作符位于两个数据范围之间
select *
from STUDENT
where id between 0 and 10
6、 别名:
在查询中涉及超过一个表
在查询中使用了函数
列名称很长或者可读性差
需要把两个列或者多个列结合在一起
(1) 表的别名
select SNAME,CNAME,CSID
from COURSE as C,STUDENT as S
where S.ID = CE.CSID
ORDER BY CSID
(2) 列的别名
select ID as student_ID
from STUDENT
WHERE SSCORE >= 60
7、 连接:用于把两个或者多个表连接起来,基于多个表之间的相同字段。
8、 Inner join 表中至少有一个匹配,返回行
select STUDENT.ID,STUDENT.SNAME
from STUDENT
inner join STUDENT1
ON STUDENT.ID = STUDENT1.ID
9、 Left join
取出A和B两个表中的相同字段数据,再加上左表(A)中的未满足条件的数据
select STUDENT.ID,STUDENT.SNAME
from STUDENT
left join STUDENT1
ON STUDENT.ID = STUDENT1.ID
ORDER BY ID
10、 right join
取出右表中所有数据再加上满足匹配条件的数据
11、 full join
左右表中有一个满足匹配条件则返回行
Full outer join
12、 union
用于合并两个或多个select的搜索结果
select DISTINCT STUDENT1.ID,STUDENT1.SNAME
from STUDENT1
left join STUDENT
ON STUDENT1.ID = STUDENT.ID
union
select DISTINCT STUDENT1.ID,STUDENT1.SNAME
from STUDENT1
right join STUDENT
ON STUDENT1.ID = STUDENT.ID
ORDER BY ID
13、 select into
14、select insert into select
15、create database
16、create table
CREATE TABLE Persons
(
PersonID int,
LastName varchar(255),
FirstName varchar(255),
Address varchar(255),
City varchar(255)
);
17、约束
18、not null
列不能为空值
19、primary key
Not
null 和unique的结合,确保某列唯一标标识
20、unique
约束唯一标识数据库表中的每条记录。
21、check
保列中的值符合某一条件
create TABLE
student3
(id int CHECK
(id > 0)
)
22、Default
规定给没有值得列,赋默认值
ALTER
table STUDENT3
add score INT
default 0
23、create index
24、drop
DROP index index_name撤销索引
drop table student3删除表
truncate table STUDENT2删除表内容
25、Alert
ALTER TABLE table_name
ADD column_name datatype
如需删除表中的列,请使用下面的语法(请注意,某些数据库系统不允许这种在数据库表中删除列的方式):
ALTER TABLE table_name
DROP COLUMN column_name
要改变表中列的数据类型,请使用下面的语法:
SQL Server / MS Access:
ALTER TABLE table_name
ALTER COLUMN column_name datatype
My SQL / Oracle:
ALTER TABLE table_name
MODIFY COLUMN column_name datatype
Oracle 10G 之后版本:
ALTER TABLE table_name
MODIFY column_name datatype;
26、auto increment
自动创建主字段的下一个值
27、视图
28、日期
29、null值
30、null函数
31、通用数据类型
32、db数据类型
函数
Avg()
Count()满足匹配你条件的行数
select count(SSCORE)
from STUDENT
where SSCORE > = 60
Firsr()第一行记录
SELECT SSCORE,ID
FROM STUDENT
WHERE ROWNUM <= 1
Last()返回最后一行记录
Max()返回最大值
Min()返回最小值
Sum()返回和
Group by 按某一字段排列asc正序desc倒叙
Having条件,原因where无法和聚合函数一起使用
参考:https://www.runoob.com/sql/sql-tutorial.html
SQL常用指令集(Oracle)的更多相关文章
- 【转】SQL Server、Oracle、MySQL和Vertica数据库常用函数对比
SQL Server.Oracle.MySQL和Vertica数据库常用函数对比 Vertica数据库是HP公司新收购的用于BI方面的数据库. 1. 绝对值 S:select abs(-1) valu ...
- oracle学习笔记(九) SQL常用函数说明以及使用
SQL常用函数说明以及使用 以下补充以下常用的函数,更多的请看oracle函数API文档 to_char to_char(8.58,'9.99') to_char(8.50,'9.00') to_ch ...
- SQL server 与Oracle开发比较
●概念上区别 1.Oracle 是一种对象关系数据库管理系统(ORDBMS),而Sql server 只是关系型数据库管 理系统(RDBMS). 2.Oracle使用Internet文件系统,该系统基 ...
- PL/SQL常用设置 可看引用位置更清晰直观 引自:http://blog.csdn.net/xiaoqforever/article/details/27695569
引自:http://blog.csdn.net/xiaoqforever/article/details/27695569 1,登录后默认自动选中My Objects 默认情况下,PLSQL Deve ...
- SQL Server连接Oracle详细步骤
http://blog.csdn.net/weiwenhp/article/details/8093105 我们知道SQL Server和Oracle其实很多原理都类似.特别是一些常用的SQL语句都是 ...
- sql优化(oracle)
系统优化中很重要的方面是SQL语句的优化,对于海量数据,优质的SQL能够有效的提高系统的可用性. 总结的有点罗嗦,列个简单的目录啦~ 目录 第一部分知识准备 ...
- 【转】几个常用的Oracle存储过程
http://blog.bossma.cn/database/some-oracle-storing-process/ 几个常用的Oracle存储过程 发布时间:2008年1月6日 / 分类:Data ...
- PL/SQL Developer 连接Oracle数据库详细配置方法
PL/SQL Developer 连接Oracle数据库详细配置方法 近段时间很多网友提出监听配置相关问题,客户终端(Client)无法连接服务器端(Server).本文现对监听配置作一简单介绍,给出 ...
- sql server和oracle数据库
sql server和oracle数据库安装按照官方教程即可:以及他们相应的管理工具,sql server management studio自带的,oracle的管理工具PLSQL需要单独下载安装, ...
随机推荐
- node.js 写流 createWriteStream----由浅入深
createWriteStream 写流 基于fs模块 let fs=require("fs"); createWriteStream创建一个写流 我们先创建一个2.txt要写入的 ...
- 饭卡-HDU2546(01背包)
http://acm.hdu.edu.cn/showproblem.php?pid=2546 饭卡 Time Limit: 5000/1000 MS (Java/Others) Memory L ...
- 洛谷—— P3386 【模板】二分图匹配
P3386 [模板]二分图匹配(复习) 题目背景 二分图 题目描述 给定一个二分图,结点个数分别为n,m,边数为e,求二分图最大匹配数 输入输出格式 输入格式: 第一行,n,m,e 第二至e+1行,每 ...
- excel 合并 单元格内容
刚刚有人问怎么合并单元格内容,正好excel 我也不会,顺便查查记录一下 1.假设有两个单元格如下: 单元格1 单元格2 2. 在一个空白单元格输入 =( 这代 ...
- 打造Spring Cloud构建微服务架构的最全资料
访问: https://git.oschina.net/didispace/SpringCloud-Learning http://blog.didispace.com/categories/Spri ...
- SAS编程基础 - 菜鸟入门常用操作
1. SAS9.4添加和取消注释的快捷键? Ctrl+/:添加注释 Ctrl+Shift+/:取消注释 2. 如何强制终止程序运行? 看到那个圆圈里带叹号的图标了吗?没错,就是它 - 中断! 3. 如 ...
- centos7更新、更新、每天更新、每天自动更新
每一天我们的系统时时刻刻都被凶狠之徒盯着,保持软件在最新的状态是其中一项我们必须做,也很容易做到的工作. 首先我们立即手动更新所有预先安装的软件: yum -y update 跟着设定系统定时自动更新 ...
- 托管C++线程锁实现 c++11线程池
托管C++线程锁实现 最近由于工作需要,开始写托管C++,由于C++11中的mutex,和future等类,托管C++不让调用(报错),所以自己实现了托管C++的线程锁. 该类可确保当一个线程位于 ...
- Wordpress 建站(一)
去年在美国的justhost上买了两个域名(shanyexuanyu.com 和 chenjinyu.net.shanyexuanyu.com是给一位马来西亚的佛教徒朋友做的站点. 她镜头下佛教的文 ...
- VC++6.0不能显示MSDN解决的方法
1.搜索看系统是否有Vshelp.dll文件.没有则去站点下载一个 位操作系统直接将下载的文件放在C:\Windows\System32 位操作系统则放在C:\Windows\SysWOW64 3.点 ...