查询A表的所有列
select * from A
查询A的id,name列
select id,name from A
计算查询
查询A表中所有人的出生年月
select 2012-age from A
设置格式查询
查询A表中所有人的出生年月重命名为birthday,用小写字母表示姓名
select 2012-age "birthday",lower(name) from A
消除重复行
select distinct age from A
查询满足条件的列
常用的查询条件
比较:=,>,<,>=,<=,!=,<>,!>,!<,not+上述
确定范围:between and,not between and
确定集合:in,not in
字符匹配:like,not like
判空:is null,is not null
逻辑运算:and,or,not
查询 id为001的人名
select name from A where id='001'
查询年龄在20-25之间的人
select name from A where age between 20 and 23
查询a,b,c 部门的人名
select name from A where dept in('a','b','c')
查询不是a,b,c部门的人名
select name from A where dept not in('a','b','c')
字符匹配
% 代表任意长度的字符串
_ 代表任意单个字符
查询id为001的人的信息
select * from A where id like '001'
查询所有姓李的人的信息
select * from A where name like '李%'
查询所有不姓李的人的信息
select * from A where name not like '李%'
使用转义字符
查询db_sal部门的人的信息
select * from A where dept like 'db\_sal' escape '\'
涉及空值的查询
查询没有工资的人的信息
select * from A where sal is null
多重条件查询
查询部门为a年龄小于35的人的姓名
select name from A where dept='a' and age<35
查询排序
查询a部门的人的工资并按照工资的升序排列
select sal from A where dept='a' order by sal asc
使用SQL函数
count([distinct | all] *) 统计个数
count([distinct | all] 列名) 统计某一列值的个数
sum([distinct | all]列名) 计算某一列值的总和
avg([distinct | all]列名) 计算某一列的平均值
max([distinct | all]列名) 求一列中的最大值
min([distinct | all]列名) 求一列中的最小值
查询总人数
select count(*) from A
分组查询
求各部门的人数
select dept,count(dept) from A group by dept