一、查询的过程:
二、查询语法的基本结构
select 列名1,列名2,...,列名n | * --select 子句
from 表名 --from子句
[where 条件] --where子句、条件子句
条件的格式: 列名 = 值
等于 = 大于> 小于 <
大于等于>= 小于等于 <= 不等于 <>
条件有多个:用 and(且) 和 or (或)连接
1、查询表的所有数据(所有的字段,所有的行)
select *
from tb_student;
/ 创建学生表(学号,姓名,性别,年龄,院系,所在班级,地址,备注) /
create table tb_student(
sno char(6) primary key,
sname varchar(20) not null,
ssex bit default 1, /默认值为男/
sage int,
sdept varchar(10),
sclass char(8),
saddr varchar(20),
sremark varchar(50)
);
/插入基础数据/
insert into tb_student
values('tr001', '乔峰',1,28,'武打系','TR09','河南嵩山','契丹人'),
('tr002', '段誉',1,19,'美术系','TR16','云南大理','不是皇族的皇帝'),
('tr003', '阿紫',0,16,'捣蛋系','TR10','塞外星宿海',null),
('tr004', '阿朱',0,18,'舞蹈系','TR11','江苏苏州','阿紫的姐姐'),
('tr005', '慕容复',1,26,'美术系','TR16','江苏苏州','有点牛'),
('tr006', '虚竹',default,22,'武打系','TR09','湖北武当','逍遥派'),
('tr007', '天上童姥',0,125,'捣蛋系','TR10','湖北武当',null),
('tr008', '铁头人',1,20,'武打系','TR09','河南信阳','游家庄人'),
('tr009', '木婉清',0,20,'舞蹈系','TR11','湖南君山',null);
/1-查询表的所有数据/
select * from tb_student;
/2-查询部分列,所有行的数据/
select sno, sname, sdept
from tb_student
列名之间用逗号,分隔
/3-查询部分列,部分行(加了条件子句)的数据/
/所有女学员/
select sno, sname, sdept
from tb_student
where ssex = 0;
/3-2 对查询结果 按院系排序/
select sno, sname, sdept
from tb_student
where ssex = 0
order by sdept
;
/4:查询结果时,改变列的显示名称(取别名)/
select sno '学号', sname '姓名', sdept '院系'
from tb_student
where ssex = 0;
select sno as '学号', sname as '姓名', sdept as '院系'
from tb_student
where ssex = 0;
/5:合并的列的值,使用函数 concat/
/自我介绍:某系的某某/
select concat(sdept,'的',sname) as '自我介绍'
from tb_student
/6:算同学的出生年/
/
1、有年龄 sage
2、今年2015 - sage,就是出生年
/
select sno, sname, 2015-sage as '出生年份'
from tb_student
where ssex=1;
/7: 小写字母:lower
查询全体学生的姓名、出生年份和所有班,要求用小写字母表示所有班名。
/
select sname,2015-sage '出生年份', lower(sclass)
from tb_student;
/8:去掉重复行,使用关键字:distinct/
select distinct sdept
from tb_student;
总结:
查询语句基本有三个部分组成: select子句,from子句和where子句(也叫:条件子句)
select子句(控制查询结果的列)的写法:
1) ——显示所有列
2)列1, 列2, 列n ——显示部分列,这种格式也叫:列的列表。如:sno,sname,sdept
3)列名 as '别名' ——查询结果显示的列名。如:sname as '姓名'
4)数值列运算(+,-,,/) 如:2015-sage
5)字符列连接,使用concat函数,concat(列1,列2,列3)。如:concat(sdept,sname)
6)去掉查询结果的重复行,如:distinct sdept
7)列值字母小写,lower。如:lower(sclass)
from子句——控制数据来源于哪些表
from 表名
where子句——控制查询结果的行(符合条件的才显示)
格式:列名 运算符 值 and|or 列名2 运算符2 值2
运算符有: 等于=;小于<;大于>;不等于<>;大于等于>=;小于等于<=
如: ssex = 0, sage < 20
基本上都用于数值型的列,其中 = 和 <> 也可以用于字符型的列
共同学习,写下你的评论
评论加载中...
作者其他优质文章