mysql 之增删改查(一)
来源:互联网 发布:大数据在教育行业应用 编辑:程序博客网 时间:2024/05/18 03:27
高薪:数据库优化,线程,算法,框架源码,设计模式
pagesize:页面大小(每页显示的数据条数)
pageno:当前页(页码)
SELECT <字段名列表>FROM <表名或视图>[WHERE <查询条件>][GROUP BY <分组的字段名>]
[ORDER BY <排序的列名>[ASC 或 DESC]]
[LIMIT (pageno-1)*pagesize,pagesize];
5.切换数据库
use holly;
6.查看数据库表
show tables;
7.查看表结构
desc student;
8.添加数据
insert into student(sname,sex,age,studytime,subject,score) values('超群','女',18,'2017-01-01','java',85.6);insert into student(sname,sex,age,studytime,subject,score) values('晶晶','女',18,'2017-01-02','sql',96),('奔奔','男',28,'2017-01-03','sql',96);commit;
9.查看数据
select * from student;
+—–+——-+——+——+————+———+——-+
| sid | sname | sex | age | studytime | subject | score |
+—–+——-+——+——+————+———+——-+
| 1 | holly | ? | 18 | 2010-05-06 | java | 90.00 |
| 2 | 超群 | 女 | 18 | 2017-01-01 | java | 85.60 |
| 3 | 晶晶 | 女 | 18 | 2017-01-02 | sql | 96.00 |
| 4 | 奔奔 | 男 | 28 | 2017-01-03 | sql | 96.00 |
+—–+——-+——+——+————+———+——-+
10.修改数据
update student set sex='女' where sid=1;commit;
11.查看数据
select * from student;
+—–+——-+——+——+————+———+——-+
| sid | sname | sex | age | studytime | subject | score |
+—–+——-+——+——+————+———+——-+
| 1 | holly | 女 | 18 | 2010-05-06 | java | 90.00 |
| 2 | 超群 | 女 | 18 | 2017-01-01 | java | 85.60 |
| 3 | 晶晶 | 女 | 18 | 2017-01-02 | sql | 96.00 |
| 4 | 奔奔 | 男 | 28 | 2017-01-03 | sql | 96.00 |
+—–+——-+——+——+————+———+——-+
12.复制表结构(列名)和表数据:不复制序列和主外键
create table newstudent(select * from student);
13.删除某一条表数据:序列不变
delete from student where sid=4;commit;
14.查看数据
select * from student;
+—–+——-+——+——+————+———+——-+
| sid | sname | sex | age | studytime | subject | score |
+—–+——-+——+——+————+———+——-+
| 1 | holly | 女 | 18 | 2010-05-06 | java | 90.00 |
| 2 | 超群 | 女 | 18 | 2017-01-01 | java | 85.60 |
| 3 | 晶晶 | 女 | 18 | 2017-01-02 | sql | 96.00 |
15.插入数据
insert into student(sname,sex,age,studytime,subject,score) values('奔奔','女',18,'2017-01-01','java',85.6);commit;
- 查看数据库表
select * from student;
+—–+——-+——+——+————+———+——-+
| sid | sname | sex | age | studytime | subject | score |
+—–+——-+——+——+————+———+——-+
| 1 | holly | 女 | 18 | 2010-05-06 | java | 90.00 |
| 2 | 超群 | 女 | 18 | 2017-01-01 | java | 85.60 |
| 3 | 晶晶 | 女 | 18 | 2017-01-02 | sql | 96.00 |
| 5 | 奔奔 | 男 | 28 | 2017-01-03 | sql | 96.00 |
+—–+——-+——+——+————+———+——-+
–18.删除数据表
drop table student;
–19.如果有两个表,这个两个表有关联,先查找一方和多方,分清主表,从表
– 一方:主表,多方:从表
– 创建表时创建主表再创建从表
–创建主表classes表
create table classes( cid int unsigned auto_increment primary key, cname varchar(20) not null);insert into classes(cname) values('TB113'),('TB116');commit;
–创建从表student表
create table student( sid int unsigned auto_increment primary key, sname varchar(20) unique, sex char(4) default '男', age int(10) default 18, studytime date, cid int references classes(cid));insert into student(sname,studytime,cid) values('张三','2017-01-01',1),('李四','2017-01-02',2),('魏巍','2017-01-03',2),('王五','2017-01-04',2),('王二','2017-01-05',2);commit;
–20.两边联查加别名
select s.cid scid,c.cid as ccid from student s,classes c where c.cid=s.cid;
+——+——+
| scid | ccid |
+——+——+
| 1 | 1 |
| 2 | 2 |
| 2 | 2 |
| 2 | 2 |
| 2 | 2 |
+——+——+
21.统计所有的学生人数
select count(*) from student;select count(1) from student; √
22.获取最大的学生编号
select max(sid) from student;
23.获取最小的学生编号
select min(sid) from student;
23.获取编号的平局值
select avg(sid) from student;
24.获取年龄值的总和
select sum(age) from student;
25.排序升序
select cid from classes order by cid;select cid from classes order by cid asc;
25.排序降序
select cid from classes order by cid desc;
26.按照cid分组分组(只能显示分组字段和聚合函数)
–统计每个班级下的学生人数
select cid,count(cid) from student group by cid;
+——+————+
| cid | count(cid) |
+——+————+
| 1 | 1 |
| 2 | 4 |
+——+————+
–对分组再次筛选建议使用having 而不是where
select cid,count(cid) from student group by cid having cid>1;
27.先分组再排序
select cid,count(cid) from student group by cidorder by cid desc;
28.分页查询,每页显示3条数据,查询第一页,第二页
select * from student limit 0,3;
+—–+——-+——+——+————+——+
| sid | sname | sex | age | studytime | cid |
+—–+——-+——+——+————+——+
| 1 | 张三 | 男 | 18 | 2017-01-01 | 1 |
| 2 | 李四 | 男 | 18 | 2017-01-02 | 2 |
| 3 | 魏巍 | 男 | 18 | 2017-01-03 | 2 |
+—–+——-+——+——+————+——+
select * from student limit 3,3;
+—–+——-+——+——+————+——+
| sid | sname | sex | age | studytime | cid |
+—–+——-+——+——+————+——+
| 4 | 王五 | 男 | 18 | 2017-01-04 | 2 |
| 5 | 王二 | 男 | 18 | 2017-01-05 | 2 |
+—–+——-+——+——+————+——+
–29.查询班级编号为2的第一页数据,每页显示3条数,
select * from student where cid=2 limit 0,3;
–30.查询和李四同班(cid一样)的所有的学生信息
–查询李四同学的班级编号
select cid from student where sname='李四'
–查询和李四同班的所有的学生信息
select * from student where cid=(select cid from student where sname='李四');
–31.统计和李四同班的所有的学生人数
select count(*) from student where cid=(select cid from student where sname='李四');
–32.查询学生编号在1,3,5,7,9范围内的学生信息
–in返回范围内存在的数据,
select * from student where sid in(1,3,5,7,9);
–33.查询班级编号为2,并且姓名存在与所有学生姓名中的学生信息
select * from student where cid=2 and sname in (select sname from student);
–34 查询学生编号不在1,3,5,7,9范围内的学生信息
select * from student where sid not in(1,3,5,7,9);
- mysql 之增删改查(一)
- mySQL之增删改查
- mysql 重新学习一 (增删查改)
- mysql+tomcat+jsp增删改查(一)
- JBDC之增删改查代码(针对mysql)
- mysql 之 增删改查(二)2017-08-04
- MySQL常规篇之增删改查(精选)
- MySql之增删改查总结
- MySql之增删改查总结
- MySql之增删改查总结
- MySql之增删改查总结
- MySql之增删改查总结
- Go语言之MySQL增删改查
- 数据库之MySQL增删改查记录
- Mysql之基本增删改查
- 安卓sqlite之增删改查(一)
- 安卓sqlite之增删改查(一)
- Swing 之 JTable 增删改查(一)
- 【功能介绍】ITSOM企业级应用SaaS平台——项目管理
- 万维链的应用场景(五)
- Hive 之 内置函数
- Day1-1.Where Storage lives
- JAVA中Integer.parseInt()与Integer.valueOf()
- mysql 之增删改查(一)
- 面试2
- 消除移动端webkit内核浏览器点击时出现的阴影
- Activiti相关信息
- 常用数据结构及算法
- C++继承与派生(公有派生和私有派生)的概念
- Spring boot JSP 打包执行问题
- monkey测试命令行
- 模拟实现select服务器