oracle常用操作指令

登录oracle用户: sqlplus  用户名/密码

创建用户:create user 要创建的用户名 identified by 当前用户名;

授权:grant resource,connect to 要授权的用户名;

删除用户:drop user 用户名

 

创建表:

create table       student(

id number(6),              //。。。字段

name varchar2(25)  default  'kb',  //设置默认值

age number(3)

);

 

删表:drop table 表名

 

1,查询行:

 

列的别名

(1)可以给列名取别名

(2)as关键字可以省略

(3)别名中有空格、特殊字符、大小写敏感,需要用双引号

例如:

select last_name,(salary+500)*12 as total

from s_emp;

select last_name,(salary+500)*12 total

from s_emp;

select last_name,(salary+500)*12 "total salary"

from s_emp;

select last_name,(salary+500)*12 "total"

from s_emp;

字段中出现了表达式,则查询出来的该字段会用表达式代替列名,所以一般要写别名

 

多列连接:

 

(1)可以通过||将多个列或字符串常量连接在一起

 

空值:

 

(1)nvl函数可以将空值用指定值来替代

 

(2)nvl两个参数的数据类型必须匹配

select firstname ,nvl(id,0) from test;

 

@功能同start:

执行导入sql脚本,并将内容写入缓冲区

 

 

2,排序、限制查询行

 

1.order by排序规则

 

(1)asc,升序排列,默认取值

 

(2)desc,降序排列

 

(3)order byselect命令的最后一个子句

 

select last_name,salary,dept_id

 

from s_emp

 

order by salary asc;

2.order bynull值处理

(1)升序中,放最后

(2)降序中,放最前

 

 

限制取出记录数:

(1)between...and...:闭区间;先跟小值,再跟大值

 

(2)in:从给定的列表范围内匹配值

 

(3)like:模糊查询

 

escape自定义转义字符,可以让统配符失去特殊意义,变成普通字符

 

查出名字以_a开始的?

 

select last_name,salary

 

from s_emp

 

where last_name like '\_a%' escape '\';

 

 

 

3,单行函数

 

1.lower:字符串转换成小写

 

select lower(last_name)

 

from s_emp;

2.round(1,2):对数值进行四舍五入

 

3.trunc(1,2):对数值进行截断,不会进

 

组函数:

1.avg:求平均值,操作数值类型

 

2.count:统计记录条数

 

 

select count(*)

 

from test;

 

 

 

伪列

1,sysdate,实际上是一个没有参数的函数

2,rownum:行号

查询表中前十行数据?

select last_name,salary

from s_emp

where rownum<=10;

rownum使用注意:

<<=无限制

=>=只对1有意义

>无意义

 

3,rowid:行地址

 

posted @ 2019-06-05 20:32  千里之外kb  阅读(530)  评论(0)    收藏  举报