Oracle应用

sql简介:
SQL是什么?

  • Structured Query Language结构化者询语言
    对程序增删改查时使用

SQL的组成:

  •  数据定义语言(DDL): CREATE、ALERT、 DROP、TRUNCATE
    
  •  数据操作语言(DML): INSERT、UPDATE、 DELETE、 SELECT
    
  •  事务控制语言(TCL): COMMIT、SAVEPOINT、ROLLBACK
    
  •  数据控制语言(DCL): GRANT、REVOKE
    

运算符:

  • 一种符号,它是用来进行列间或者变量之间的比较和数学算的

  • 包括算术运算符、赋值运算符、比较运算符、逻辑运算符

  1. 算数运算符: + - * %

  2. 赋值运算符: 把一个数或变量或表达式复制给另一个变量

  3. 逻辑运算符: AND(和) OR(并且) NOT(取反)

逻辑运算符
		AND	当且仅当两个布尔表达式都为true时,返回TRUE。
		OR	当且仅当两个布尔表达式都为false,返回FALSE。
		NOT	布尔表达式的值取反
  1. 比较运算符: = > < <> >= <= !=
  • +加运算,求两个数或表达式相加的和,如6+8

  • -减运算,求两个数或表达式相减的差

  • *乘运算,求两个数或表达式相乘的积

  • /除运算,求两个数或表达式相除的商,如5/3的值为1

  • %取模运算,求两个数或表达式相除的余数,如: 5%3的值为2

    语法(增删改查):写完一定要用commit;提交
    增加:

//添加单行注释

INSERT INTO (表名字段)values(); --每个数据值的数据类型必须相匹配注意约束

//添加多行注释复制添加复制其他表中的数据 --注意列的数量

			insert into 表名(列名)
			select列名
			from 表名
			--默认值可以写把字段1设置成默认值
			--insert的话, defalt可以要盖not nul约束
			insert into表明(字段1) values(default);

修改:
//修改set后面写修改的值where后面是判断要修改的值


UPDATE表名SET列名=更新值
[WHERE更新条件]
			--update,则default不一 定能要盖not null约束
			1、更新多列数据使用逗号隔开
			2、勿忘条件限制,以防有效数据的丢失

删除:
使用DELETE删除数据行
语法

DELETE [FROM]表名[WHERE <删除条件>]

使用TRUNCATE删除数据行
语法

TRUNCATE TABLE 表名

delete和truncate 的异间:
delete和truncate的区别相同都是删除数据操作
删除数据操作
不同:
1.delete可 以删除部分数据(加入where); truncate不行
2.在删除相间的数据量时,delete效率慢,truncate效率快
3.delete 删除数据后,会生成数据碎片会记录到日志中,可以恢复,truncate不能恢复
4.delete truncate删除 后都不会影响自增(和mysql不同的地方)

	查询:
		
		普通查询:select字段from表名where字段=值:
		查询全部:select * from表名;
		起别名别名的使用范围:当前sq语句中字段别名不需要用引号括起来
		select字段名as字段别名from表名:
		常量列:一般适用于分页	select'云图智联as学院from表名;
		排序 :
			升序:select字段from表名order by根据排序字段asc,
			降序:select字段from表名order by根据排序字段desc;
		两列排序:当第一个排序遇到相同时,根据第二个排序
			select * from表名order by字段1.字段2;
			  第一个升序第二个降序:select * from表名order by字段1 desc字段2 asc;

sqlplus常用语句

show user;
select * from user_role_privs;
select * from tab; 	--查看当前用户所有表 tab指对象
desc student3; 	--查询当前表结构
exit;  		--退出
conn		--更换用户

Oracle常用SQL语句

1、连接SQL*Plus system/manager
2、显示当前连接用户SQL> show user 
3、查看系统拥有哪些用户SQL> select * from all_users;
4、新建用户并授权SQL> create user a identified by a;(默认建在SYSTE M表空间下)SQL> grant connect,resource to a; 
5、连接到新用户SQL> conn a/a 
6、查询当前用户下所有对象SQL> select * from tab;
7、建立第一个表SQL> create table a(a number); 
8、查询表结构SQL> desc a 
9、插入新记录SQL> insert into a values(1); 
10、查询记录SQL> select * from a; 
11、更改记录SQL> update a set a=2;
12、删除记录SQL> delete from a; 
13、回滚SQL> roll;SQL> rollback; 
14、提交SQL> commit; 
15、查出当前用户所有表名select unique tname from col;

常用函数
Oracle SQL 提供了用于执行特定操作的专用函数。这些函数大大增强 了 SQL 语言的功能。

  1. 单行函数:对每一个函数应用在表的记录中时,只能输入一行结果,返回一个结果,
    比如:MOD(x,y)返回 x 除以 y 的余数(x 和 y 可以是两个整数,也可以是表中的整数列)。 常用的单行函数有: 字符函数:对字符串操作。
    数字函数:对数字进行计算,返回一个数字。
    转换函数:可以将一种数据类型转换为另外一种数据类型。 日期函数:对日期和时间进行处理。
  2. 聚合函数:聚合函数同时可以对多行数据进行操作,并返回一个结果。比如 SUM(x)

字符函数

函数功能
initcap(char)首字母大写
lower(char)转换为小写
upper(char)转换为大写
trim(char,ser)左剪裁
rerim(char,set)右剪裁
translate(char.,from,to)按字符翻译
replace(char,search str,replace str)字符串替换
instr(char,substr[post])查找子串位置
substr(char,pos,len)取子字符串
length(char)字符串长度
concat(char1,char2)连接字符串

数字函数

函数功能
abs(n)取绝对值
ceil(n)向上取值
sin(n)正弦
cos(n)余弦
sign(n)取符号
floor(n)向下取整
power(m,n)m的n次幂
mod(m,n)取余数
round(m,n)四舍五入
trunc(m,n)截断
sqrt(n)平方根
 1 ‐‐ 四舍五入
 2 select round(255,1) from dual; 
 3 ‐‐ 舍弃小数位 
 4 select trunc(255,1) from dual;

常用日期函数

函数功能
month between(date1,date2)返回两个日期间的月份
add_ month(date,n)返回把月份数n加到日期date,上的新日期
next_ day(date,week)返回指定日期后的星期对应的新日期
last-day(date)返回指定日期所在月的最后一天

常用转换函数

函数功能
to_ char(字符串 列,格式字符串)转换成字符串类型
to date(字符串,格式字符串)转换成日期类型
to_ number(字符串)转换成数值类型

其他函数

函数功能
nvl(exp1,exp2)如果exp1的值为null,则返回exp2的值,否则nvl(exp1,exp2) 返回exp1的值
nvl2(exp1,exp2,exp3)如果exp1的值不为null,则返回exp2的值,否则返回exp3的值
decode(value,if1,then1,if2.hen…else)如果value的值为if1,则返回then1的值,如果为if2,则返回then2的值,… 否则else的值

统计函数

1avg(x):返回x的平均值 
select avg(grade) from sc;2count(x):返回统计的行数 
select count(name) from sc;3max(x):返回x的最大值
select max(grade) from sc;4min(x):返回x的最小值 
select min(grade) from sc;5sum(x):返回x的总计值 
 select sum(grade) from sc;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值