您的位置:首页 > 数据库

sql语句的基本用法

2017-11-08 18:55 302 查看
转载自http://www.cnblogs.com/TankXiao/p/5480548.html

Student表和Score表的定义



创建表的语句

CREATE TABLE [bdo].[student]{
[id] [int] IDENTITY(1,1) NOT NULL,
//使用 IDENTITY 关键字来执行 auto-increment 任务
//(1,1)表示从1开始,每次递增1
[stu_id] [int] NULL,
[name] [verchar] (20) NULL,
[sex] [varchar] (10) NULL,
[birth] [data] NULL,
[department] [varchar](20) NULL,
[address] [varchar](50) NULL
}ON [PRIMARY]


CREATE TABLE [dbo].[Score](
[id] [int] IDENTITY(1,1) NOT NULL,
[stu_id] [int](10) NULL,
[c_name] [varchar](20) NULL,
[grade] [int](10) NULL
) ON [PRIMARY]


插入数据

INSERT INTO Student VALUES( 901,'张老大', '男','1985-09-13','计算机系', '北京市海淀区');
INSERT INTO Student VALUES( 902,'张老二', '男','1986-01-02','中文系', '北京市昌平区');
INSERT INTO Student VALUES( 903,'张三', '女','1990-12-13','中文系', '湖南省永州市');
INSERT INTO Student VALUES( 904,'李四', '男','1990-12-13','英语系',
4000
'辽宁省阜新市');
INSERT INTO Student VALUES( 905,'王五', '女','1991-08-17','英语系', '福建省厦门市');
INSERT INTO Student VALUES( 906,'王六', '男','1988-09-10','计算机系', '湖南省衡阳市');

INSERT INTO Score VALUES(901, '计算机',98);
INSERT INTO Score VALUES(901, '英语', 80);
INSERT INTO Score VALUES(902, '计算机',65);
INSERT INTO Score VALUES(902, '中文',88);
INSERT INTO Score VALUES(903, '中文',95);
INSERT INTO Score VALUES(904, '计算机',70);
INSERT INTO Score VALUES(904, '英语',92);
INSERT INTO Score VALUES(905, '英语',94);
INSERT INTO Score VALUES(906, '计算机',90);
INSERT INTO Score VALUES(906, '英语',85);


1、查询Student表中所有记录

SELECT * FROM Student

* 是通配符, 意思是所有的列

2、查询Student表中,所有学生的姓名和院系

SELECT name,epartment FROM Student

3、查询Student表的信息,按照学生的年龄从大到小排序

SELECT * FROM Student ORDER BY birth ASC

ORDER BY 关键字是排序

4、查询Student表的信息,按照学生的年龄从小到大排序

descent 降序

SELECT * FROM Student ORDER BY birth DES

5、查询Student表中, 叫王五的学生的信息

SELECT * FROM Student WHERE name=’王五’

6、查询Student表中,来自北京的学生

SELECT * FROM Student WHERE adress LIKE ‘%北京%’

‘A_Z’: 所有以 ‘A’ 起头,另一个任何值的字原,且以 ‘Z’ 为结尾的字串。 ‘ABZ’ 和 ‘A2Z’ 都符合这一个模式,而 ‘AKKZ’ 并不符合 (因为在 A 和 Z 之间有两个字原,而不是一个字原)。

‘ABC%’: 所有以 ‘ABC’ 起头的字串。举例来说,’ABCD’ 和 ‘ABCABC’ 都符合这个套式。

‘%XYZ’: 所有以 ‘XYZ’ 结尾的字串。举例来说,’WXYZ’ 和 ‘ZZXYZ’ 都符合这个套式。

‘%AN%’: 所有含有 ‘AN’ 这个套式的字串。举例来说, ‘LOS ANGELES’ 和 ‘SAN FRANCISCO’ 都符合这个套式。

7、查询所有计算机系和英语系的学生的信息

SELECT * FROM Student WHERE department=’英语系’or department=’计算机系’

8、查询所有计算机系和英语系和化学系的学生的信息

SELECT * FROM Student WHERE department IN (’英语系’,’计算机系’,’化学系’)

9、查询Student表中, 年龄从大到小排第二,第三,第四的三个人的信息

select * from STUDENT order by desc OFFSET 10 ROW FETCH NEXT 5 ROWS ONLY

查询每个院系有多少人

查询李四的考试科目和考试成绩

seleect name,grade from select id from student where name=’李四’

用连接的方式查询所有学生的信息和考试信息

计算每个学生的总成绩

计算每个考试科目的平均成绩

查询计算机成绩低于95的学生信息

查询同事参加计算机和英语考试的学生信息

将计算机考试成绩按从高到低进行排序

查询姓张的同学的姓名院系和考试科目及成绩

查询湖南的学生的姓名,年龄,院系和考试科目及成绩
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: