第二十二天

Posted 马MZJ

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第二十二天相关的知识,希望对你有一定的参考价值。

  1 --使用昨天创建好的lianxi0425的数据库
  2 --1.创建一个学生信息表xinxi
  3 --列名分别为:
  4 --code(int) not null
  5 --name(varchar(50))      not null
  6 --birth(varchar(50))    not null   
  7 --sex(char(10))    not null
  8 --score(decimal(18,2))
  9 --banji(varchar(20))        not null   
 10 --创建表格
 11 use lianxi0425
 12 go
 13 create table xinxi
 14 (
 15  code int not null,
 16  name varchar(50) not null,
 17  birth varchar(50) not null,
 18  sex   char(10)  not null,
 19  score  decimal(18,2) not null,
 20  banji  varchar(20)  not null,
 21 )
 22 go
 23 
 24 
 25 
 26 --插入信息:
 27 --插入十个人的信息,插入班级时要求有两个班级
 28 --创建一班数据
 29 insert into xinxi values(101,张三,1990年3月2日,,86,一班)
 30 insert into xinxi values(102,王丽,1991年5月5日,,95,一班)
 31 insert into xinxi values(103,王五,1990年10月3日,,86,一班)
 32 insert into xinxi values(104,李四,1992年11月11日,,89,一班)
 33 insert into xinxi values(105,张红,1990年9月5日,,80,一班)
 34 
 35 --创建二班数据
 36 insert into xinxi values(201,赵六,1990年4月2日,,94,二班)
 37 insert into xinxi values(202,赵红,1991年6月6日,,95,二班)
 38 insert into xinxi values(203,马七,1990年5月9日,,86,二班)
 39 insert into xinxi values(204,刘九,1992年12月20日,,78,二班)
 40 insert into xinxi values(205,马丽,1990年7月5日,,92,二班)
 41 --1)查询全部
 42 select *from xinxi
 43 --2)查询一列(姓名)
 44 select  name from xinxi
 45 --3)查询多个列(姓名、性别、生日)
 46 select name,sex,birth from xinxi
 47 --4)根据条件查询一行(code=102)
 48 select * from xinxi where code=102
 49 --5)根据条件查找一个数据(code为102的姓名)
 50 select name from xinxi where code =102
 51 --6)根据条件查找多个数据(code为102的姓名性别)
 52 select name , sex from xinxi where code=102
 53 --7)插入一条数据(自己的信息)
 54 insert into xinxi values(206,张全蛋,1989年3月3日,,60,二班)
 55 --8)更改code为102的学生的生日为1990-1-1
 56 update xinxi set birth=1990年1月1日 where code=102
 57 --9)删除code为205的学生的数据
 58 delete from xinxi where code=205
 59 
 60 --查询所有分数在90分以上的
 61 select * from xinxi where score between 90 and 100
 62 select * from xinxi where score>90
 63 
 64 --模糊查询  用% 表示
 65 --%可以表示任意的字符,不管长度如何
 66 --like     像
 67 --查看所有姓赵的
 68 select * from xinxi where name like 赵%
 69 select * from xinxi where name like %四
 70 --下划线表示此位置只有一个完整字符
 71 --查看姓李的并且名字只有两个字
 72 select * from xinxi where name like 李_
 73 
 74 --分数从小到大排出来   后缀为asc   默认不写就是升序
 75 select * from xinxi order by score
 76 --降序        后缀为desc
 77 select * from xinxi order by score desc
 78 
 79 --查看分数排名前三的人员的所有信息
 80 select top 3 * from xinxi order by score desc
 81 
 82 
 83 
 84 --聚合函数
 85 --AVG()    求平均数
 86 --求平均分数        as表示列名显示为***
 87 select AVG(score) as 平均分 from xinxi
 88 --查询一班的平均分
 89 select AVG(score) as 平均分 from xinxi where banji=一班
 90 
 91 --Count   求个数
 92 select COUNT(*) from xinxi
 93 --查询姓王的人有几个
 94 select COUNT(*) from xinxi where name like 王%
 95 
 96 --MAX  求最大
 97 select MAX(score) from xinxi where banji=二班
 98 --MIN  求最小
 99 
100 --SUM   求总和
101 select SUM(score) from xinxi where banji = 一班
102 
103 --group by 分组
104 select banji from xinxi group by banji
105 --分组之后看看每个班级的平均分
106 select banji , AVG(score) as 平均分,COUNT(*) as 人数 from xinxi group by banji
107 --having     后面只允许跟聚合函数
108 select banji ,AVG(score) as 平均分 from xinxi where score>85 group by banji having COUNT(*)>3
109 
110 
111 --select   作用   查询
112 select 7+19
113 
114 --数学函数
115 --ABS    绝对值
116 select ABS(-44)
117 --ceiling    上线
118 select CEILING(3.14)
119 --floor     下线
120 select FLOOR(3.14)
121 --POWER     谁得几次方
122 select POWER(6,4)
123 --ROUND      四舍五入,逗号后边表示小数点后有几位
124 select ROUND(44.444,0)
125 --SQRT    平方根
126 select SQRT(4)
127 --square     2次方
128 select SQUARE(4)
129 
130 
131 --字符串函数
132 --ASCII            将字符转化为数值
133 select ASCII(a)
134 select ASCII(name) from xinxi
135 --CHAR            将数值转化为字符
136 select CHAR(97)
137 select CHAR(score) from xinxi
138 --CHARINDEX     查看此字符串首次出现的位置
139 select CHARINDEX(efg,abcdefghijklmn)
140 
141 --left    从左侧截取多少个
142 select LEFT(abcdefg,3)
143 --right    从右截取几个
144 select RIGHT(abcdefg,3)
145 --LEN    查看字符串的长度,前面的空格算,后面的不算
146 select LEN(     abc     )
147 
148 
149 --时间日期函数
150 SET DATEFIRST 1
151 SELECT @@DATEFIRST AS 1st Day, DATEPART(dw, GETDATE()) AS Today
152 SELECT GETDATE()--获取当前时间
153 select SYSDATETIME()--获取更精确的系统时间

 

以上是关于第二十二天的主要内容,如果未能解决你的问题,请参考以下文章

二刷java基础第二十二天——反射

菜鸟学Python第二十二天

学习python课程第二十二天

华为实习日记——第二十二天

软件课设第二十二天 9.9

第二十二天