/** 为了清晰化的显示:所有固定命令都是用大写格式显示
sql语法分类:dml,ddl,dcl
(1)dml(data manipulation language ,数据库操作语言):
数据:增加,修改,删除
(2)ddl(data definition language,数据库定义语言 ):
数据表的结构的定义,进行数据库对象的定义(用户,数据表,模式名称)
(3)dcl(data control lanaguage,数据控制语言):授权管理
sql语句执行顺序:①from ,②where ,③select
**/
1.oracle常用指令:
启动oracle:(1)首先检查服务选项 “oracleservicexxx”,“orcaleoradbllg_home1tnslistener” 两个服务是否启动;
(2)打开 “运行”或者进入cmd进入命令行界面输入 :
“sqlplus ” 或者
“sqlplus 用户名/密码“
2. 设置结构显示:
(1)set linesize 100 ; //设置每行显示长度
(2)set pagesize 30 ; //设置每页显示的数据行数
(3)col tname for a20 ; //设置列的格式化显式
3.用户切换:
conn[ect] 用户名/密码 [as sysdba | sysuser] // 切换用户
例如: conn sys/change_on_install as sysdba //切换到超级用户
conn system/manager //切换到普通用户
4.基本语句:
select * from tab ; //查询当前数据库下所有表名
desc 表名; //查看表的结构
select * from 表名 ; //查询该表全部信息
select * from 用户名.表名 ; //指定用户名,查询该用户下的表
select 列名[别名] ,列名[别名]…. from 表名 ; //查询指定列的信息
select 列名 as 别名 from 表名; //定义表名,oracle的语句中as可以省略
select job,sal * 10 + 20*10 as income from emp; //查询职业,10倍月薪加上20乘以10
select distinct 列名 from 表名 ; //查询 列信息并去掉其中的重复信息,distinct去重
select ‘常量’ ,列名 from 表名 ; // 查询常量,常量需要使用 “ ‘ ” (单引号) 包括起来
select ‘常量’ || 列名 from 表名 ; //使用 ” || ” 实现数据的连接显示
host copy d:\hello\a.txt d:\hello\b.txt //进行文件的拷贝
5.限定查询
限定查询,基本执行语句:
③select [distinct ] 列名[别名]
①from 表名 [别名]
②where 限定条件 ;
常用判断(使用一个运算符的性能是高于多个运算符的):
• 关系运算符: >,<, >= ,>= , = , != ;
• 逻辑运算符:and , or ,not【非】 ;
• 特殊运算符: between…and ,in ,not in ,like 、
• ” % ” :匹配0 位,1位或者多位任意字符
• ” _ ” :匹配任意一位字符
select * from 表名 where not ( age >10 or sal<100000 ); //查询表里年龄小于10或者工资高于100000的人员信息 ,注意有括号
select * from 表名 where ename like ‘ a% ‘ ; //查询所有以a开头的姓名
select * from 表名 where ename like ‘ _a% ‘ ; //查询所有第二位为a开头的姓名
select * from 表名 where ename like ‘ %a% ‘ ; //查询所有任意位有a的姓名
6.查询排序:
sql语句执行顺序
③select [distinct ] 列名[别名]
①from 表名 [别名]
②where 限定条件 ;
④[order by 排序字段名称 [asc | desc] ]
order by :根据字段排序
asc:升序,如果不设置排序类型,默认采用升序
desc:降序,须手工设置
select * from emp order by sal desc ; //查询工资根据降序排序
select * from emp where age=11 order by sal desc ; //查询年龄为11的工资根据降序排序
select * from emp where age=11 order by sal desc,hiredate asc ; //查询年龄为11的工资根据降序排序,入职日期为升序排序