加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

oracle基本查询

发布时间:2020-12-12 13:46:36 所属栏目:百科 来源:网络整理
导读:1、show user USER 为 "SCOTT" ?set linesize 120- -------------------------设置行宽 每一行显示120个字符 ?col ename for a8 ?----------------------设置ename列宽 a表示字符串 8表示字符串的宽度是8 ?col sal for 9999/ ? ---------------------- 一个9

1、show user
USER 为 "SCOTT"


?set linesize 120--------------------------设置行宽 每一行显示120个字符

?col ename for a8 ?----------------------设置ename列宽 a表示字符串 8表示字符串的宽度是8
?col sal for 9999/ ? ---------------------- 一个9代表一个数字,薪水是四个数字所以是四个9

?/ --------------------------------------------表示执行上一条sql语句

select * from tab;------------------------查看tab数据字典(管理员提供的表)

?host cls---------------------------------清屏“屏幕东西太多时清屏。

?

?

-----------------------通过列名查询

?

2、SQL优化:
-------------------------- 尽量使用列名代替* 查询要快

--查询员工号 姓名 月薪 年薪 年收入
?select empno,ename,sal,sal*12 年薪,comm 奖金,sal*12+comm 年收入
?from emp;

?-------------------查询员工号 姓名 月薪 年薪

--------------------------查询员工号 姓名 月薪 年薪 年收入(部分截图)

因为comm(奖金)有些人没有,即为空值,这样sal*12+comm 就会出现下面这种情况:所以,SQL中null值:包含null的表达式都为null,?SQL中,null != null

?

-------------------------------------因此为处理这种情况有一个nvl来处理;nvl判断值如果为空,则赋值给它0

?select empno,sal*12+nvl(comm,0) 年收入from emp:同样是求查询员工号 姓名 月薪 年薪 年收入

?

?SQL中,null != null

?--查询奖金为null的员工
?select *
?from emp
?where comm=null; 因为comm是null 在sql中null!-null

未选定行

SQL> ed
已写入 file afiedt.buf

?select *
?from emp
?where comm is null 要用is 不要用=

------------------------------- ed ?是在oracle中语句有错误可以打开编辑器重新修改的命令

如图:

host cls-------------------------清屏

?distinct--------去掉重复的记录:

?

同时对两列进行去重时,是两列全部相同才是重复的

这个是代表deptno与job组合起来没有重复的才省掉

concat 连接字符串

上图中的dual是管理员提供的伪表;

--连接符:||
SQL> select ‘Hello‘||‘ World‘ from dual;

?

select ename||‘的薪水是‘||sal 一列
?from emp;

?

?

?save是保存

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读