首页 > 数据库 >肖SIR__数据库之单表练习2__12.2

肖SIR__数据库之单表练习2__12.2

时间:2024-03-05 16:26:30浏览次数:21  
标签:__ SIR name age 12.2 select student class math

create table student(
id int(4) primary key ,
age int(8),
sex int(4),
name varchar(20),
class int(4),
math int(4)
)engine=innodb;
insert into student values
(1,25,1,'zhangsan',1833,90),
(2,25,1,'lisi',1833,67),
(3,28,0,'wangwu',1833,79),
(4,35,1,'xiaoliu',1835,96),
(5,27,0,'xiaoli',1833,86),
(6,32,1,'xiaochen',1835,48),
(7,22,1,'wangwu',1834,70),
(8,31,0,'xiaoqi',1825,88),
(9,27,0,'xiaoqi',1833,74),
(10,27,1,'niuqi',null,80);
select * from student ;

表格:

 

1、查询1833班信息的2-4行的数据

结果:*   所有数据

条件:class=1833 ,limit 1,3

方法1:select * from student where class="1833" limit 1,3

 

2、显示班级为空的id和姓名、和数学分数

结果:id ,name,math

条件:class  is  null

方法:select id,name,math from student where class is null;

3、统计每个班级人数

结果:count(name)

条件:count(name) ,group   by     class   

方法:SELECT count(id),class from student group by class;

4、在1833班数学成绩最高的ID年龄和姓名

结果:id ,age、name

条件:class=1833  ,  max(math)

语句:有缺陷写法

select id,age,name,math from student where class="1833" order by math desc limit 0,1; ( 存在重复最高分数只显示一个)

方法2:

select  id,age,name from  student where class="1833" and math=(select max(math) from student where class="1833")

5、求数学分最小的班级 ID年龄和姓名

结果:id 、age、name、class

条件:min(math)

方法:select class,id,age,name,math from student where math=(select min(math) from student);

6、求1833班数学分总和

结果:sum(math)

条件:class=1833,sum(math)

方法:select  class,sum(math)  from  student where class = 1833  ;

 

7、求所有班级分数总和

结果:sum(math)

条件:

方法:select  sum(math)  from  student  ;

理解成每个班级:分数总和

select  class,sum(math)  from  student group by  class  ;

8、求年纪最大的班级并显示班级年龄和姓名分数

结果:class、age、name、math

条件:max(age)

方法:select class,age,name,math from student where age=(select max(age)from student );

9、统计sex1和0个总数

结果:sex,count(*)

条件:group  by   sex 

方法:select sex,count(sex) from student group by sex;

10、求出所有班级年纪平均数

结果:avg(age)

方法:select avg(age) from student;

 

11、求出1835班年纪的平均数

结果:avg(age)

条件:class=1835

方法:select avg(age) from student  where   class=1835;

12、求出1833班年纪的平均数

结果:avg(age)

条件:class=1833

方法:select avg(age) from student  where   class=1833;

13、将所有数据按照年纪进行降序后显示年纪姓名和班级

结果: age、name、class

条件:order  by  age  desc 

方法:select age,name,class from student order by age desc;

14、将所有数据按照年纪升序显示年纪姓名班级和数学分数

结果:age、class、name、math

条件:order  by   asc   

方法:select age,name,class,math from student order by age age;

 

15、按照班级将进行分组

结果:*  显示所有信息

条件:group by  class

方法:select * from student group by class ;

16、根据age字段进行降序排序;

结果: 显示所有信息  *

条件:order  by   age   desc

方法:select * from student  order  by   age  desc ;

17、根据math字段进行升序排序,并显示前5行所有数据;

结果:*   所有数据

条件:order  by  math   asc  limit   0,5

方法:select * from student order by math asc limit 0,5;

18、把lisi的数学成绩改为69分

条件:updata     math=69

方法:update student set math=69 where name='lisi';

19、查找性别不为1的所有数据

结果:显示所有的数据   *

条件:sex<>1 ,sex!=1  ,not in(1)

方法:

20、只显示表中姓名,且将相同的姓名名称去重

结果: name

条件:distinct

方法:select distinct(name) from student;

21、统计表中行数

22、统计年纪在27岁的有多少

23、统计年纪大于25小于35的有多少

24、求数学分总和

25、求分数最小

26、求平均分

27、只显示3-8行的数据

28、查找姓名尾号为qi的所有数据

29、查询姓名开头为xiao的所有数据

30、查询中间值为ao开头的所有数据

标签:__,SIR,name,age,12.2,select,student,class,math
From: https://www.cnblogs.com/xiaolehong/p/18054290

相关文章

  • PDFBox-Android添加图片被遮挡
    使用pdfbox-android在已存在的pdf上面追加图片,需要先创建PDPageContentStream,在创建的时候需要注意设置模式为APPEND,并且将resetContext参数设置为truevalcs=PDPageContentStream(document,......
  • c# .net winfrom sunnyui的RichTextBox TextBox的KeyPress和KeyDown对Enter按钮无效处
    效果图: 在此之前感谢博主,winform无法屏蔽回车事件、KeyPress事件不执行问题解决-CSDN博客根据该大佬的方式,需处理添加回车事件处理,便继承了RichTextBox重写该方法,且执行了执行事件publicsealedclassMyUIRichTextBox:UIRichTextBox{publicboolLastRow=false;......
  • 开发了一个用于新手学针灸的小程序
    年前群里小伙伴宋工承担起开发工作,为大家带来了一个新年礼物——针灸速用通小程序!这个小程序解决的问题是针灸初学者或者非专业常遇到的:1、根据症状不知道下哪些穴位2、不知道如何取穴和定位穴位;所以第一版主要实现的功能:1、根据病症按照倪师的取穴原则自动推荐选用的下针穴位2、......
  • 基本操作之——正则表达式
    1.定义*允许0次或多次重复+允许1次或多次重复?允许0次或1次重复{n,m}允许n到m次重复{n}允许n次重复^ 匹配字符串开头$ 匹配字符串结尾.匹配除换行符外所有字符2.事例*正则表达式基本操作tuple_regexp_match('abba','ab*',Match......
  • 基于JAVA的2048小游戏的二次开发
    引言《2048Numberpuzzlegame》是一款数字益智游戏,而《2048》的初始数字则是由2+2组成的基数4。在操作方面的不同则表现为一步一格的移动,变成更为爽快的一次到底。相同数字的方框在靠拢、相撞时会相加。系统给予的数字方块不是2就是4,玩家要想办法在这小小的16格范围中凑出「2048」......
  • Codeforces Round 930 (Div. 1)
    Preface虽然难得有Div1的CF,但由于在周四晚上学校要断电就没打这两天有空去补了下发现好像错过了最适合我的一场,AB都是一眼题,C是经典图论建模,D是DS典题没有Counting我直接爽飞,不过估计现场打的话写个ABC差不多了,D的码量还是挺大的A.BitwiseOperationWizard很有意思的一个......
  • wpf 3D,Viewort3D,
    <Windowx:Class="WpfApp5.Views.MainWindow"xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"xmlns:d="http://schemas.micro......
  • IISExpress 跨域cookie的奇怪问题
    测试环境WIN10,IIS10,IISExpress10,Chrome120,MicrosoftEdge114网站A端口7001只有1个Default.aspx,无前端代码。逻辑很简单,SetCookie用来把客户端传过来的值写入到cookie中,GetCookie用来将客户端传过来的cookie值再返回给客户端。1protectedvoidPage_Load(objectsende......
  • QC3.0快充识别芯片FP6601Q:电子工程师的首选,兼容QC2.0与平芯微技术
    概述FP6601Q是一款智能充电管理芯片,具有出色的协议识别功能,可以自动识别接入的充电设备并调整输出电压,以满足不同设备的充电需求。它支持BC1.2、Apple、SamsungAFC、华为FCP/SCP、ClassA、QC3.0和QC2.0等多种充电协议,适用于苹果、三星、华为等多种品牌设备的快速充电。同时,它还......
  • 基于JAVA的康威生命游戏二次开发
    引言:       康威生命游戏(Conway'sGameofLife)是一种基于细胞自动机的零玩家游戏,由数学家约翰·康威(JohnConway)于1970年创建。这个游戏并不是传统意义上的游戏,而是一种模拟生命演变的规则系统。康威生命游戏的“宇宙”是一个由无限的二维网格组成的平面,每个格子被称为......