文章目录
1. 表内插入数据
已知表如图:
1.1 单行数据插入
blog.csdnimg.cn/14d8488f1cc44d52b555b1e2888f02e2.png)
在商品表中插入一条数据:名称为“学生书包”、价格18.91、库存101、描述为空
insert into goods values(‘学生书包’,18.91,101,null);
1.2 多行数据插入
insert into goods values(‘床’,500.99,200,null),(‘桌子’,200.99,100,null);
1.3 指定列插入
在商品表中插入一条数据:名称为“笔记本电脑”、价格6566.99.
insert into goods(name,price) values(‘笔记本电脑’,6566.99);
2. 查询表内数据
2.1 查询表内所有数据
select * from goods;
2.2 指定条件查询(where)
比较运算符:
运算符 | 说明 |
---|---|
>, >=, <, <= | 大于,大于等于,小于,小于等于 |
<=> | 等于,NULL 安全,例如 NULL <=> NULL 的结果是 TRUE(1) |
BETWEEN a0 AND a1 | 范围匹配,[a0, a1],如果 a0 <= value <= a1,返回 TRUE(1) |
LIKE | 模糊匹配。% 表示任意多个(包括 0 个)任意字符;_ 表示任意一个字符 |
逻辑运算符:
运算符 | 说明 |
---|---|
AND | 多个条件必须都为 TRUE(1),结果才是 TRUE(1 |
OR | 任意一个条件为 TRUE(1), 结果为 TRUE(1) |
NOT | 条件为 TRUE(1),结果为 FALSE(0) |
2AND的优先级高于OR,在同时使用时,需要使用小括号()包裹优先执行的部分
student学生表中,字段有姓名name,年龄age,要求查询姓张,并且年龄在18到25岁之间的学生
2.3 起别名查询
() as () 将前一个括号的表达式结果 用 后面括号名字表示
select id, name, chinese + math + english as 总分 from student;
2.4 去重查询(distinct)
去除学生数学成绩中的重复数据查询
select distinct math from student;
2.5 排序查询(order by)
– ASC 为升序(从小到大)
– DESC 为降序(从大到小)
select name, qq_mail from student order by qq_mail;(默认升序)
select name, qq_mail from student order by qq_mail DESC;(降序)
例子
查询article文章表中,文章标题title为空,或者满足发表日期create_date在2019年1月1日之后
select * from article where title is null or create_date > ‘2019-1-1 00:00:00’;
3 修改操作
update 表名 set
修改所有库存大于30的商品记录,将价格增加50块
update goods set price = price + 50 where stock > 30;
修改“Java核心技术”的图书信息,将价格修改为61
update book set price = 61 where name = ‘java核心技术’;
4. 删除操作
删除商品表中,价格大于60,或者是库存小于200的记录
delete from goods where price > 60 or stock < 200;