MySQL数据库入门练习200句

原生SQL语句大集合

SQL数据库入门练习200句

//重建数据库

101, create database testdatabase;use database testdatabase;

102, create table tt1(id int, name varchar(20),age int,sex boolean);

103, show tables;desc tt1;

//插入

104, insert into tt1 values(1,"zhang",25,0);

105, insert into tt1 values(2,"wang",25,1);

106, select* from tt1;

107, insert into tt1(id,name,age,sex) values(3,"li",28,1);

108, insert into tt1(id,name,sex,age) values(4,"sun",0,22);

109, insert into tt1(id,name,sex) values(5,"zhao",30,1);

110, insert into tt1(id,age,name) values(6,"he",47,0);

111, insert into tt1(id,age,name) values(7,"chen",22,1),(7,"zhang",22,1),(7,"xie",32,1);

112, select* from tt1;

//修改

113, update tt1 set id=10,name="new",age=100,sex=0 where id=1; select* from tt1;

114, update tt1 set id=11,name="new" where id=2,age=25; select*from tt1;

115, update tt1 set id=12,sex=1 where id=7; select* from tt1;

116, update tt1 set sex=1 where id>3;

117, update tt1 set sex=0 where id<4;

//删除

118, delete from tt1 where id=1;select* from tt1;

119, delete from tt1 where id=12;select* from tt1;

//查询

120, alter table tt1 add address varchar(30);

121, update tt1 set address="Beijing" where sex=1;

122, update tt1 set address="Shanghai" where sex=0;

//简单查询

123, select id from tt1;

124, select id,name from tt1;

125, select id,name,address from tt1;

//条件查询

126, select id,name,address from tt1 where address="Beijing";

127, select* from tt1 where id in(2,3,4);

128, select* from tt1 where id not in(2,3,4);

129, select* from tt1 where id between2 and 5;

130, select* from tt1 where id not between2 and 5;

131, select* from tt1 where address like"beijing";

132, select* from tt1 where address like"bei";

133, select* from tt1 where address like"bei%";

134, select* from tt1 where address not like"bei%";

135, select* from tt1 where address is null;

136, select* from tt1 where address is not null;

137, select* from tt1 where age<20 and sex=1;

138, select* from tt1 where sex=0 or age>30;

//查询结果不重复

139, select distinct address from tt1;

//查询结果排序

140, select* from tt1 order by age;

141, select* from tt1 order by age asc;

142, select* from tt1 order by age desc;

//分组查询

143, select* from tt1 group by sex;//单独使用group by 只会选择每个分组的一条记录

//group by 与 group_concat结合使用

144, select group_concat(name),sex from tt1 group by sex;

145, select group_concat(name),group_concat(age),sex from tt1 group by sex;

146, select group_concat(name,age),sex from tt1 group by sex;

//group by与集合函数结合使用

147, select sex,count(sex) from tt1 group by sex;

148, select sex,count(sex) from tt1 group by sex having sex>2;//having用于对分组后的结果加限制条件

149, select sex,count(sex) from tt1 group by sex having count(sex)>2;

//with rollup

150, select sex,count(sex) from tt1 group by sex with rollup;//在显示记录的最后一行加一条,记录是上面所有记录的和,通常用于合计数量

//limit显示限制

151, select* from tt1;

152, select* from tt1 limit2;

153, select* from tt1 limit3;

154, select* from tt1 limit0,2;

155, select* from tt1 limit1,2;

//使用集合函数查询

//为了更好的理解本问题,新建一个表

156, create table grade(id int,name varchar(10),subject varchar(10),score int,sex boolean);

157, insert into grade values(1,"wang","math",100,1),(1,"wang","english",96,1),(1,"wang","physics",90,1);

    insert into grade values(2,"li","math",96,1),(2,"li","english",85,1),(2,"li","physics",99,1);

    insert into grade values(3,"sun","math",85,0),(3,"sun","english",98,0),(3,"sun","physics",80,0);

158, select* from grade;

159, select count(*) from grade;

160, select id,name,sum(score) from grade where id=1;

161, select id,name,sun(score) from grade group by id;

162, select id,name,sum(score) from grade group by id order by sum(score) desc;

163, select id,name,avg(score) from grade where id=2;

164, select id,name,avg(score),sum(score) from grade where id=3;

165, select id,name,avg(score) from grade group by id;

166, select subject,avg(score) from grade group by subject;* from

167, select subject,avg(score) from grade group by subject order by avg(score);

168, select name,max(score) from grade where subject="math";

169, select name,max(score) from grade where subject="english";

//连接查询

//内连接

170, create table stu(id int,name varchar(10),age int,sex boolean);

171, insert into stu values(1,"wang",25,1),(2,"li",23,1),(3,"sun",23,0),(4,"zhou",27,1),(5,"zhang",22,0);

172, select id,name,age,sex,score from stu,grade where stu.id=grade.id;

173, select stu.id,stu.name,stu.age,stu.sex,score from stu,grade where stu.id=grade.id;

174, select stu.id,stu.name,stu.age,stu.sex,score from stu,grade where stu.id=grade.idand score>90;

    //外连接

175, select stu.id,stu.name,stu.age,stu.sex,score from stu left join grade on stu.id=grade.id;

176, select stu.id,stu.name,stu.age,stu,sex,score from stu right join grade on stu.id=grade.id;

177, insert into grade values(4,"hu","math",99,1),(5,"liu","english",97,0);

178, select stu.id,stu.name,stu.age,stu.sex,subject,score from stu left join grade on stu.id=grade.id;

179, select stu.id,stu.name,stu.age,stu.sex,subject,score from stu right join grade on stu.id=grade.id;

    //子查询

180, select* from stu where id in(select*from grade);

181, select* from grade where id in(select* from stu);

182, create table scholarship(level int,money int,score int);

183, insert into scholarship values(1,10000,90),(2,5000,85),(3,3000,80);

184, select id,name,score from grade where score>=(select score from scholarship where level=1);

185, select id,name,score from grade where score>=(select min(score) from scholarship);

    //exists子查询

186, select* from stu where exists(select name from grade where id=1);

187, select* from grade where score>any(select score from scholarship);

188, select* from grade where score>all(select score from scholarship);

//合并查询结果

189, select name from stu union select name from grade;

190, select name from stu union all select name from grade;

//别名

191, select* from scholarship s where s.level=1;

192, select* from scholarship s where s.money=5000;

193, select s.name from stu s,grade g where s.name=g.name;

194, select subjectas su,scoreas sc from grade;

195, select* from stu where name regexp"^w";

196, select* from stu where name regexp"g$";

197, select* from stu where name regexp"^w.g$";

198, select* from stu where name regexp"^w..g$";

199, select* from stu where name regexp"[aeo]";

200, select* from stu where name regexp"[a-g]";

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 观其大纲 page 01 基础知识 1 MySQL数据库概要 2 简单MySQL环境 3 数据的存储和获取 4 M...
    周少言阅读 8,352评论 0 33
  • MYSQL 基础知识 1 MySQL数据库概要 2 简单MySQL环境 3 数据的存储和获取 4 MySQL基本操...
    Kingtester阅读 12,393评论 5 116
  • 1.1、常用数据库包括:Oracle、MySQL、SQLServer、DB2、SyBase等 1.2、Navica...
    NOX_5d2b阅读 8,727评论 0 0
  • 一、数据库操作: 1.1 创建数据库: create database student; 1.2 删除数据库: ...
    __71db阅读 4,183评论 0 0
  • 我想,我真的是一个特别恋旧的人。 然而,不是所有的东西都会一直陪着你,所以我常常怀念。在我身边陪我最久的是小学二年...
    意中晚归了阅读 2,187评论 2 1

友情链接更多精彩内容