1创建表
案例:
CREATE TABLE exam_result (
id INT,
name VARCHAR(20),
chinese DECIMAL(3,1),
math DECIMAL(3,1),
english DECIMAL(3,1)
);
结果:成功创建表
2 新增
案例:可以使用单行数据+全列插入 也可以使用多行数据+指定列插入
INSERT INTO exam_result (id,name, chinese, math, english) VALUES
(1,'唐三藏', 67, 98, 56),
(2,'孙悟空', 87.5, 78, 77),
(3,'猪悟能', 88, 98, 90),
(4,'曹孟德', 82, 84, 67),
(5,'刘玄德', 55.5, 85, 45),
(6,'孙权', 70, 73, 78.5),
(7,'宋公明', 75, 65, 30);
结果:
数据成功插入表中?
3查询(Retrieve)
-- 全列查询
select * from exam_result;
-- 指定列查询
select id, name,english from exam_result;
select name from exam_result;
-- 排序 order by asc为升序 desc为降序
-- 没有order by字句的查询,返回的顺序是为定义的,永远不要依赖这个顺序
-- 按照数学成绩降序排列
select * from exam_result order by math desc;
-- 分页查询从0开始筛选2条结果alter
select *from exam_result order by math , chinese asc limit 2 offset 0;
-- where 条件可以使用表达式,但是不能使用别名
-- AND的优先级高于OR在使用时使用小括号()包裹优先执行的部分
select * from exam_result where name in ("唐三藏");
-- 查找以孙来头的name
select name ,name like '孙%'from exam_result;
-- 查找孙?的name一个_代表一个字符
select name,name like '孙_'from exam_result;
select name,name like '孙__'from exam_result;
-- 查找math>50的数据并且按照降序排序
select * from exam_result where math>50 order by math desc;
4 删除
语法:DELETE FROM TABLE_NAME [WHERE....][ORDER BY ....][LIMIT....]
-- 删除孙悟空同学的成绩
delete from exam_result where id=1;
-- 删除整张表数据
-- 准备测试表
DROP TABLE IF EXISTS students;
CREATE TABLE students(
id INT,
name VARCHAR(20));
-- 删除整张表格
DELETE FROM students;
|