数据库 --基础查询
1,简单的select语句
select * from emp;
2,使用算数表达式
--求所有员工的全年的基本工资
select empno, ename, sal, sal+100
from emp;
-- 求所有员工的(基本工资+奖金)所有工资
select empno, ename, sal, comm, sal+comm as 所有工资
from emp;
3,连接运算符
-- 需要把员工编号和员工姓名合并显示
select empno || '_' || ename as fullname
from emp;
5,字段别名
-- 列名取别名
select empno as 员工编号,
ename as 员工姓名,
sal as 基本工资
from emp;
6,空值
-- NULL
-- 查询没有奖金(为空值)的员工的信息
select *
from emp
where comm is NULL;
-- 查询员工姓名为空(空格)的信息
select *
from emp
where ename =null;
7,去重复行
delete from table1 t1
where
rownum <(select max(rowunm) from table1 t2 where t1.id = t2.id)
8,结果排序
order by
注意:若省略ASC和DESC,则默认为ASC,即升序排序。
-- 升序
SELECT ename, sal FROM emp ORDER BY ename;
SELECT ename, sal FROM emp ORDER BY ename asc;
-- 降序
SELECT ename, sal FROM emp ORDER BY ename desc;
9,比较运算符
between and >= <= 不等于:!= 、 <>
-- between and
select *
from emp
where sal between 1000 and 3000;
10,in和not in 操作
11,模糊查询 like
字符匹配操作可以使用通配符 “%” 和 “_”:
1,%:表示任意0个或多个字符。可匹配任意类型和长度的字符,有些情况下若是中文,请使用两个百分号(%%)表示。
2,_: 表示任意单个字符。匹配单个任意字符,它常用来限制表达式的字符长度语句。
// 查找以A开头的部门名称
select * from dept where dname like '_A%';
12, 逻辑运算符 and /or /not
-- and
select *
from emp
where ename='KING' and ename='SMITH';
-- or
select *
from emp
where sal=3000 or sal=800;
-- not

浙公网安备 33010602011771号