SQL Server基础操作(此随笔仅作为本人学习进度记录二)
批量化更改字段中的数值(对教师进行涨工资) use LtsDatabase试验 update 教师表 set 教师编号=120,教师薪资=教师薪资+1000,教师姓名='于老师',教师职称='高级教师' 为数据库中的字段插入对应的值 insert into 教师表(教师编号,教师工资,教师姓名,教师职称) values(1,3000,'高老师','高级教师') 从数据库中删除一条记录 delete from 教师资料 where 教师编号=1 \\从教师表中删除教师编号为1的记录 delete from 教师资料 where 教师薪资<4000 \\从教师表中删除教师薪资小于4000的记录 创建表案例(网站职员表) use LtsDatabase create table 网站职员表 ( 职员编号 int, 姓名 varchar(50), 年龄 int, 毕业院校 varchar(50), 家庭住址 varchar(50), 工资 money ) insert into 网站职员表(员工编号,姓名,年龄,毕业院校,家庭住址,工资) values (1,张三,25,哈尔滨工程大学,8000,) \\向网站职员表中插入该条记录 select * from 网站职员表 where 工资>=6000 \\在网站志愿表中查询条件为工资大于等于2700元的相对应的记录 (where是条件) select * from 网站职员表 where 工资>5600 or 工资=10000 \\查询语句的另一种查询方式,满足其中任意条件即可查询 (or是或的意思) select * from 网站职员表 where 年龄=25 or 工资=10000 (毕业院校='哈工大'毕业院校!='哈工大'=等于 !=不等于) \\语句比较灵活,举一反三 运算符 逻辑与运算符(and) select * from 网站职员表 where 年龄=25 and 毕业院校='哈工大' \\这两个条件中有一个不满足都不能执行 not运算符 select * from 网站职员表 where not 工资>2700 \\查找工资不大于2700元的字段 select * from 网站职员表 where 工资!<2700 \\查找工资不大于2700元的字段 运算符的优先级 1.括号 2.Not(非)、正号、负号 3.乘、除 4.加、减 5.比较运算符 6.And 7.Or \\and要求左右两边的条件必须都满足 select * from 网站职员表 where (毕业院校='哈工大' or 毕业院校='浙江大学') and 年龄=25 \\括号里面单独运算,满足任意条件与and在一起执行 select * from 网站职员表 where 毕业院校='哈工大' or 毕业院校='浙江大学' or 毕业院校='东北大学' \\满足其中任意一个都可以 in()运算符\\在括号里面,满足任意条件都可执行 select * from 网站职员表 where 毕业院校 in('哈工大','东北大学','沈阳工程学院') \\in符合此条件 select * from 网站职员表 where 毕业院校 not in('哈工大','东北大学','沈阳工程学院') \\not in 不符合此条件 select * from 网站职员表 where 家庭住址 is Null \\家庭住址为空值的 select * from 网站职员表 where 工资>=2000 and 工资<=2800 \\工资大于等于2000元并且工资<=2800元 select distinct 毕业院校 from 网站职员表 \\消除重复的记录,只显示不同毕业院校的 select * from 网站职员表 where 工资 in(select 工资 from 网站职员表 where 姓名='小江') \\首先执行括号里面小江的工资,小江的工资等于2800元, (=)\\这里既可以用in也可以用=号 然后执行wher 后面工资in包括2800元所有员工的字段 多表嵌套查询+统计函数 use LtsDatabase create table 网站经营项目 ( 项目编号 int identity(1,1) primary key, \\设置标识种子和标识自增量分别为1,将其定义为主键, 项目名称 varchar(50), 负责人 varchar(50), 合作单位 varchar(50) ) select * from 网站职员表 where 姓名 in(select distinct 负责人 from 网站经营项目) \\从网站职员表中查询到符合条件的记录,从网站经营项目表中查询到负责人这个字段的值 distinct\\去掉多余的,重复的 select * from 网站职员表 where 姓名 in(select distinct 负责人 from 网站经营项目) order by 年龄 asc \\通过年龄进行排序,年龄从小到大排序,默认为正序进行排序 !!!\\ORDER BY 子句 按照递增或递减顺序在指定字段中对查询的结果记录进行排序。(默认情况下从小到大进行排序) !!!\\SQL 语句中, asc是指定列按升序排列,desc则是指定列按降序排列。排序子句语法:order by 列名 asc/desc,(递增/递减) SUM函数 select COUNT(*) as 记录行数 from 网站职员表 \\COUNT统计函数,统计查询出来的符合条件的记录有多少条,(*)表示所有字段,as后面是列的名称 (作为) select SUM(工资) as 员工工资总额 from 网站职员表 \\SUM(工资)!*为计算所有人员的工资总额,as员工工资总额!*为自定义的列名称,from员工职员表!*为从员工职员表中计算。 AVG求平均值 select AVG(工资) as 平均工资 from 网站职员表 MAX求最高值 aelect max(教师薪资) as 最高工资 from 教师资料 min最低值 aelect min(教师年龄) as 最小年龄 from 教师资料

更多精彩