一。 表的操作
创建student表,表中字段如下:
Sno:学号(主键)
sname :姓名
ssex : 性别
sdept : 所属系
sage :年龄
score: 成绩
CREATE TABLE student2(
Sno CHAR(10) NOT NULL PRIMARY KEY,
sname CHAR(10) NOT NULL,
ssex BOOLEAN,
sdept VARCHAR(20),
sage INT(10),
score FLOAT(10)
);
- 往表里添加10条记录记录:
INSERT INTO student2
VALUES ('1','第一个',1,'计算机系',22,98),
('2','第一个',1,'计算机系',22,98),
('3','第二个',1,'计算机系',22,98),
('4','第三个',1,'计算机系',22,98),
('5','第四个',0,'计算机系',22,98),
('6','第五个',0,'计算机系',22,98),
('7','第六个',1,'计算机系',23,98);
3.显示表的结构
DESC student2;
4.求表中记录数目
SELECT COUNT(sage) AS 记录数目 FROM student ;
举一个例子
查询"李"姓老师的数量
--方法
select count(Tname) ["李"姓老师的数量] from Teacher where Tname like N'李%'
--方法
select count(Tname) ["李"姓老师的数量] from Teacher where left(Tname,1) = N'李'
5.求年龄的平均值
SELECT AVG(sage) AS 平均年龄 FROM student ;
6.求最大年龄:
SELECT MAX(sage) AS 最大年龄 FROM student ;
- 查询全体学生的姓名、年龄,要求按照年龄降序排序。
SELECT sname,sage FROM student ORDER BY sage DESC; - 查询年龄最大的前3个学生的姓名和年龄,
SELECT sname,sage FROM student ORDER BY sage DESC LIMIT 3;
二。修改表结构
1.往表里添加字段: sadderss
ALTER TABLE student ADD t_date DATE;
2.为sage字段设置默认值: 100
ALTER TABLE student ALTER sage SET DEFAULT '100' ;
3.将字段ssex的数据类型改为 Boolean
ALTER TABLE course MODIFY ssex char(10) ;
- 删除字段 sadderss
ALTER TABLE course DROP cname ;
三. 为student表创建一个附表 stu. 附表的数据是 student表中age小于60的数据。
CREATE TABLE stud33 SELECT sno, sname FROM stu WHERE sage<60 ;
四. 写出以下表达式
5不等于6 并且 4等于4
SELECT 5!=6and4=4;3在 5和 50之间
SELECT 3 BETWEEN 5 AND 50;6不在 1 和 4之间
字符 6 在 集合 (‘4’, ‘7’, ‘9’)之中
SELECT '6'IN('4','7','9');9 不在集合 (4,3,6,8)里
SELECT 9 IN(4,3,6,8);写出(4<3)同时 (3>2) 的逻辑与
` SELECT 4<3 AND3>2;写出(4<3)同时 (3>2) 的逻辑或
` SELECT 4<3 OR 3>2;
8.写出(9=7)的逻辑非
SELECT 9!=7; 9.写出 (5!=9) 与(9>6)的异或表达式
SELECT 5!=9 OR 9>6;
- 写出 字符串asghj 与‘%hj‘匹配的表达式。
` SELECT 'asghj'LIKE '%hj';