基本命令sqlplus的命令
set linesize 140 //修改每行显示的数据
set pagesize 140 //修改每页显示的数据
select * from emp;
col depthno for 99999; //修改数字
col ename for a20; //修改列宽
host cls; //清屏
用户scott表
select * from tab; //查看scott用户中所有表
desc dept; //查看表dept的所有字段
select * from dept; //查看dept表的详细信息
基本查询 select 命令
select * from emp; //查询员工的所有列
select empno, ename, sal, deptno from emp; //查询部分列(empno, ename, sal, deptno是其中几个列,emp是查询表)
select empno as "员工编号", ename "姓名", sal 月薪, deptno "部分 编号" from emp; //给列起别名
select empno as "员工编号", ename "姓名", sal*12 年薪, deptno "部分 编号" from emp; //表达式计算
对于写错的命令,可以有以下方便步骤修改:
[输错的命令]
ed //数据库会打开记事本,在记事本中修改命令
/ //重复上次执行的命令
去掉重复列
select distinct deptno from emp;
SQL语句书写标准
1.SQL语言大小写不敏感
2.SQL可以写在一行或者多行
3.关键字不能被缩写也不能被分行
4.各子句一般要分行写
5.使用缩进提高语句的可读性。
定义空值 null
控制是无效的,未指定的,未知或不可预知的值
空值不是空格或者0
---1 任何表达式和null运算都为空
---2 null != null
出错示例:
select empno, ename, sal*12 年薪, (sal*12 + comm) 年收入 from emp;
正确示例:
select empno, ename, sal*12 年薪 , (sal*12 + nvl(comm,0)) 年收入 from emp;
查询奖金为空的员工
select * from emp where comm is null;
查询奖金不为空的员工
select * from emp where comm is not null;
有关虚表(伪表)
select 的检索列可以来自任何地方,原理是用到了虚表。
select ‘111‘ || ‘2222‘ "连接" , empno, ename from emp;
查系统时间:
select sysdate from dual;