200字范文,内容丰富有趣,生活中的好帮手!
200字范文 > 聚合函数 数学 字符串 函数 时间日期函数

聚合函数 数学 字符串 函数 时间日期函数

时间:2021-02-12 05:12:40

相关推荐

聚合函数 数学 字符串 函数 时间日期函数

create database lianxi0425--创建一个名字为lianxi0425的数据库gouse lianxi0425 --使用练习0425这个数据库go--创建一个学生xinxi1的表,填写学号、名字、出生年份、性别、分数、班级create table xinxi1(code int not null,name varchar(50)not null,birth varchar(50) not null, sex char(10) not null,score decimal(18,2),banji varchar(20) not null )go--向表中添加值insert into xinxi1 values(1,'张三',87,'男',98.5,'一班')insert into xinxi1 values(2,'李四',88,'男',97.5,'一班')insert into xinxi1 values(3,'王五',89,'男',96.5,'一班')insert into xinxi1 values(4,'赵六',90,'女',95.5,'一班')insert into xinxi1 values(5,'冯七',91,'男',94.5,'一班')insert into xinxi1 values(6,'周小红',92,'女',93.5,'一班')insert into xinxi1 values(7,'孙小明',93,'男',92.5,'二班')insert into xinxi1 values(8,'吴小刚',94,'男',91.5,'二班')insert into xinxi1 values(9,'郑克爽',95,'男',90.5,'二班')insert into xinxi1 values(10,'冯锡范',96,'男',99.5,'二班')go--查询全部select*from xinxi1--修改表中的值--把编号为6的周小红班级改为二班--用update修改xinxi1表中的数据,set列名为banji的列表中改名为二班,where条件name中'周小红'只修改这一个update xinxi1 set banji = '二班' where name = '周小红'--查询多个列(姓名,性别,生日)select name,sex,birth from xinxi1--根据条件查询一行(code=2)select*from xinxi1 where code=2--根据条件查找一个数据(code为3的姓名)select name from xinxi1 where code=3--根据条件查找多个数据(code为4的姓名,性别,分数)select name,sex,score from xinxi1 where code=4--插入一条数据(自己的信息)insert into xinxi1 values(11,'索额图',88,'男',98,'二班')--删除code为8的学生的数据delete from xinxi1 where code=8--查询所有分数在95分以上的select*from xinxi1 where score between 95 and 100 --between and二者之间,在分数95到90之间select*from xinxi1 where score>95--查询模糊 用%表示--%可以表示任意字符,不管长度如何--like 像--查看所有名字中有小的select*from xinxi1 where name like '%小%'--查看所有姓张的select*from xinxi1 where name like '张%'--查看所有名字后面是七的select*from xinxi1 where name like '%七'--下划线表示此位置只有一个完整字符--查看姓李的并且名字只有两个字select*from xinxi1 where name like '李_'--根据分数从小到大把学生信息排出来 后缀为asc 默认不写就是升序select*from xinxi1 order by score asc --order by排序,用法order by加上列名--降序 后缀为descselect*from xinxi1 order by score desc --后面加desc排序就会从大到小降序--查询排名前三的人员所有信息select top 3*from xinxi1 order by score desc--首先查询xinxi1中数据按照分数从大到小排列,再选取从上到下前三个人,用top,表示从上面开始,3表示选取三个--聚合函数--AVG()求平均数--求平均分数 as表示列名显示为***select AVG(score)as 平均分 from xinxi1--查询一班的平均分select AVG(score)as 平均分 from xinxi1 where banji='一班'--Count 求个数select COUNT(*)from xinxi1 --查询姓王的人有几个select COUNT(*)from xinxi1 where name like'王%'--查询有几个女的select COUNT(*)from xinxi1 where sex='女'--MAX 求最大 最高分select MAX(score) from xinxi1--求二班最高分select MAX(score) from xinxi1 where banji='二班'--MIN 求最小--求分数最少的select MIN(score) from xinxi1 --求一班最低分select MIN(score) from xinxi1 where banji='一班'--SUM求总和--求分数总和select SUM(score) from xinxi1 --求一班分数总和select SUM(score) from xinxi1 where banji='一班'--group by 分组select banji from xinxi1 group by banji--分组之后看看每个班级的人数和平均分select banji,AVG(score)as 平均分,COUNT(*)as 人数 from xinxi1 group by banji--having 后面只允许跟聚合函数select banji,AVG(score)as 平均分 from xinxi1 where score>92 group by banji having COUNT(*)>3--having后面加的属于一个筛选条件,看看前面函数是否有符合这个条件的,不符合的不显示,只显示符合--select 作用 查询select 7+19--数学函数--ABS 绝对值select ABS(-44)--ceiling 上线select CEILING(3.14)--floor下线select FLOOR(3.14)--POWER谁得几次方select POWER(6,4)--这个表示6的4次方--ROUND四舍五入,逗号后边表示小数点后有几位select ROUND(44.444,0)--44.4440四舍五入,小数点后面有零位--SQRT 平方根select SQRT(4)--开平方 --square2次方select SQUARE(4)--字符串函数--ASCII 将字符转化为数值select ASCII('a')select ASCII(name) from xinxi1--CHAR 将数值转化为字符select CHAR(97)select CHAR(score) from xinxi1--CHARINDEX查看此字符串首次出现的位置select CHARINDEX('efg','abcdefghijklmn')--left 从左侧截取多少个select LEFT('abcdefg',3)--right 从右截取几个select RIGHT('abcdefg',3)--LEN 查看字符串的长度,前面的空格算,后面的不算select LEN('abc')

--时间日期函数SET DATEFIRST 1--程序默认一周的第一天是周日,需要把它先改为1,周一SELECT @@DATEFIRST AS '1st Day', DATEPART(dw, GETDATE()) AS 'Today'SELECT GETDATE()--获取当前时间select SYSDATETIME()--获取更精确的系统时间

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。