SQLServer高级培训.ppt

上传人:小飞机 文档编号:6520846 上传时间:2023-11-08 格式:PPT 页数:171 大小:2.34MB
返回 下载 相关 举报
SQLServer高级培训.ppt_第1页
第1页 / 共171页
SQLServer高级培训.ppt_第2页
第2页 / 共171页
SQLServer高级培训.ppt_第3页
第3页 / 共171页
SQLServer高级培训.ppt_第4页
第4页 / 共171页
SQLServer高级培训.ppt_第5页
第5页 / 共171页
点击查看更多>>
资源描述

《SQLServer高级培训.ppt》由会员分享,可在线阅读,更多相关《SQLServer高级培训.ppt(171页珍藏版)》请在三一办公上搜索。

1、SQL SERVER高级培训,主讲人:郑维勇,数据库的概述,数据库对象,表、视图、存储过程、触发器、默认值、规则、索引、用户。,SQL Server数据库的版本,个人版标准版开发版企业版,Transact-SQL语言主要的4个组成部份,数据定义语言DDL数据操作语言DML数据控制语言DCL共它语言元素,Transact-SQL,数据定义语言DDL,用来创建数据库、数据库对象和定义列。包括:CREATE,ALTER,DROP。,数据操纵语言DML,用来操纵数据库的命令。包括:SELECT,INSERT,UPDATE,DELET。,数据控制语言DCL,用来控制数据库组件的存取许可、存取权限等的命令

2、包括:GRANT,DENY,REVOKE。,管理SQL Server服务,启动 SQL Server服务,Net start mssqlserver,暂停 SQL Server服务,Net pause mssqlserver,停止 SQL Server服务,Net stop mssqlserver,SQL Server服务,SQL Server 2000的各种服务和功能说明,SQL Server服务器的注册与删除,1、通过控制台目录2、使用Transact-sql sp_addserver server=server,local=local,duplicate_ok=duplicate_okE

3、gsp_addserver local,配置链接服务器,在SQL Server 2000中,允许SQL Server用户访问基于SQL Server的服务器以外的数据。通过配置链接服务器可以实现访问其他服务器上的OLE DB数据源。链接服务器是对OLE DB数据源的抽象,是OLE DB提供程序和连接属性的来源。,在链接服务器的边接过程中,为了使该连接有效,需要在链接服务器之间创建登录映射。链接服务器登录映射可以通过系统存储过程sp_addlinkedsrvlogin添加,相应地,链接服务器登录映射可以通过系统存储过程sp_droplinkedsrvlogin删除。,配置链接服务器,添加键接服务

4、器Sp_addlinkedserver server=server,srvproduct=product_name,provider=provider_name,datasrc=data_source,location=location,provstr=provider_string,catalog=catalog,Eg:exec sp_addlinkedserver server=exam2,provider=Microsoft.Jet.OLEDB.4.0,srvproduct=,datasrc=d:db2.mdb,sp_addlinkedserver 链接服务器名,产品名,Microsof

5、t.Jet.OLEDB.4.0,Access数据库路径及文件名,sp_addlinkedserver Anna,Access 2000,Microsoft.Jet.OLEDB.4.0,D:db2.mdb,配置链接服务器,配置链接服务器,创建链接服务器登录,通过系统存储过程sp_addlinkedsrvlogin可以创建或更新本地SQL Server实例上的登录与链接服务器上远程登录之间的映射。其语法为:,Sp_addlinkedsrvlogin rmtsrvname=rmtsrvname,useself=useself,location=location,rmtuser=rmtuser,rmt

6、password=rmtpassword,其中,参数:(1)rmtsrvname=rmtsrvname:是应用登录映射的链接服务器名称(2)useself=useself:决定用于连接到远程服务器的登录名称,默认设置为ture.true值指定SQL Server验证的登录使用其自己的凭据以连接到rmtsrvname,而忽略rmtuser和rmtpassword参数(3)locallogin=locallogin:是本地服务器上的登录,默认设置为Null.如果为null,则指定应用于所有连接到rmtsrvname的本地登录若不为null则locallogin可以是SQL Server登录或win

7、dows NT用户(4)rmtuser=rmtuser:当useself为false时,用来连接rmtsrvname的用户名,默认设置为null.,配置链接服务器,创建一个映射,使得所有到本地服务器的登录都使用其各自的用户凭据连接到链接服务器exam,Exec sp_addlinkedsrvlogin exam或Exec sp_addlinkedsrvlogin exam,true,使用指定的用户和密码将所有本地登录连接到链接服务器,Exec sp_addlinkedsrvlogin exam,false,null,user,password,创建一个映射,使得所有到本地服务器的登录都使用相同

8、的登录user和密码password连接到链接服务器exam,不使用登录和密码,Exec sp_addlinkedsrvlogin exam,false,配置链接服务器,数据访问从SQL Server 2000中访问OLE DB数据源的方法有两种:通过特殊名称以及通过链接服务器进行数据访问。在通过特殊名称访问OLE DB数据源的方法中,可以通过函数openrowset和opendatasource来进行。其语法:,Openrowset(provider_name,datasource;user_id;password|provider_string,catalog.schema.object|

9、query),Eg:SELECT*FROM OPENROWSET(Microsoft.Jet.OLEDB.4.0,d:db2.mdb;admin;,bbs),查询分析器,如何进入查询分析器?,SQL语言基础(变量与常量),定义和使用局部变量,定义局部变量Declare variable_name datatype,.n,Declare sex char(2),为局部变量赋值为局部变量赋值一般有两种,一种是使用select语句,另一种是使用Set语句Select variable_name=expressionfrom table_name,n where clause,declare book

10、name varchar(30)select bookname=vcprint booknameGO,SQL语言基础(变量与常量),定义和使用全局变量,全局变量是SQL SERVER系统内部事先定义好的变量,不用用户参与定义,对用户而言是只读的。,identity:返回最近一次插入的identity列的数值,返回值是numericprocid:返回当前存储过程的ID标识version:返回当前SQL Server服务器安装日期、版本以及处理器的类型language:返回当前使用的语言名servername:返回当前SQL SERVER服务器名称,SQL语言基础(变量与常量),使用日期和时间常量

11、,SQL 提供的日期/时间数据类型可以存储日期和时间的组给数据。SQL 规定日期、时间和时间间隔的常量值被指定为字符中常量。,SQL语言基础(数据类型),常见的数据类型,整型(int,smallint,tinyint,bigint)浮点数据类型(real,float,decimal)二进制数据类型(binary,varbinary)逻辑数据类型字符型数据类型(char(n),nchar(n),varchar(n),nvarchar(n),SQL语言基础(复合语句),定义复合语句(beginend),declare A int,B int,C intset A=20set B=30begin s

12、et C=A set A=B set B=Cendprint Aprint B,SQL语言基础(条件判断语句),使用if语句进行条件判断,If命令行|程序块,declare x intset x=-100if x0print x是一个负数,新建数据库,Create database命令,Create database database_nameon,.n,.nlog on,.ncollate collation_namefor load|for attach,新建数据库,create database student on(name=学生管理数据库,filename=f:datastudent

13、.mdf,size=1MB,MAXSIZE=50MB,FILEGROWTH=5MB)log on(name=学生管理日志,filename=f:datastudent.ldf,size=1MB,MAXSIZE=50MB,FILEGROWTH=10%),修改数据库,ALTER DATABASE命令,alter database studentmodify file(name=学生管理数据库,maxsize=unlimited),删除数据库,Drop Database命令,新建表,Create table 命令,Create table table_name(column_name data_ty

14、pe null|not null primary key|unique,),新建表,use studentgocreate table stu_info(stu_id int not null,stu_name varchar(10),gender bit,major varchar(20),address varchar(100),修改表(增加字段),增加字段Alter table table_nameAdd column_name data_type,Eg:alter table stu_info add memo text,修改表(增加主键),Alter table add primar

15、y key(column_name)Eg:alter table stu_info add primary key(stu_id),修改表(更改字段),更改字段属性Alter table table_nameAlter column column_name new_data_type,Eg:alter table stu_info alter column stu_name varchar(12),修改表(删除字段),Alter table table_nameDrop column column_name,Eg:alter table stu drop column memo,表的重命名,E

16、xec sp_rename old_table,new_table,Eg:exec sp_rename stu_info,stu,表的删除,Drop table table_name,显示数据库信息,显示SQL SERVER数据库中所有数据库详细信息,Select*from sysdatabases,显示系统/用户表,显示数据库中所有表的详细信息,use stuselect*from sysobjects,显示数据库中系统表的详细信息,use stuselect*from sysobjects where xtype=s,显示数据库中用户表的详细信息,use stuselect*from sy

17、sobjects where xtype=u,显示表中的字段名称及属性,显示表中的字段名称,Select col_name(object_id(tbl_stu,3),显示表中的字段长度,Select col_length(tbl_stu,stu_id),显示表中结构,Sp_help tbl_stu,Select语句(列的查询),单列查询,Select field_name from table_name,多列查询,Select field_name1,field_name2,.from table_name,查询所有列,Select*from table_name,使用列名,Select fi

18、eld_name as new_name from table_name,Select语句(列的计算),简单列计算,复杂列计算,执行算术组合运算,连接列值,Select 图书名称,(单价-进价)as 利润 from tb_xsb02,Select sum(数量)as 总数量,sum(数量)%2 剩余 from tb_xsb02,Select name 姓名,(math+english+chinese)总分,(math+english+chinese)/3 平均分 from tb_score02,Select(名字+()+姓氏)姓名 from tb_abstu02,Select语句(Where条

19、件),检索单行值,不匹配检索,Select*from tb_stu02 where 学号=ID001,Select*from tb_stu02 where 学号ID001,Select语句(区间查询),利用符号进行区间查询,利用Bewteen进行区间查询,Select*from tb_abstu02 where 年龄 18 and 年龄 22,Select*from tb_abstu02 where 年龄 between 18 and 22,Select语句(组合Where语句),利用AND运算符连接where子句,Select 学生姓名,数学成绩,音乐成绩,英语成绩from tb_StuSc

20、ore03where 数学成绩 90 and 英语成绩 90,利用OR运算符连接where子句,Select 学生姓名,数学成绩,音乐成绩,英语成绩from tb_StuScore03where 数学成绩 90 or 英语成绩 90,Select语句(IN运算符),Select 教师姓名,系别,年龄,性别from tb_TeacherInfo03where 系别 in(计算机系,英语系,生物系),Select语句(NOT运算符),Select 房间号,房间类型,价格,房态,配置from tb_kf03where(房态 NOT IN(入住)and(not(价格 between 80 and 15

21、0),Select语句(like运算符),使用%匹配字符,Like%mr%-包含字符mr的任何文本,Like mr%-以字符mr开头的任何文本,Like%mr-以字符mr结尾的任何文本,select 考生课程,考生人数,有效时间 from tb_StuExam where 考生课程 like 计算机%,Select语句(like运算符),使用_匹配任意单个字符,Select 学生编号,学生姓名,年龄,所在学院 from tb_StuInfo03 where 学生编号 like 20070101_,Select语句(like运算符),使用匹配某一范围的字符,a-m表示a到m的所有字符,0-9表示

22、0到9的所有数字,Select 学生编号,学生姓名,性别,年龄,所学专业from tb_Student05where 年龄 like 2-2_,Select语句(like运算符),使用匹配非某一范围的字符,Select 学生编号,学生姓名,性别,年龄,所学专业from tb_Student05where 年龄 like 2-2_,语句Select*from stu where name like MC 功能?,Select语句(数据排序),升序排序,Select*from tb_employee06 order by 奖金,降序排序,Select*from tb_employee06 orde

23、r by 奖金 desc,列出前n条记录,Select top n*from tbl_stu,列出前n-m条记录(mn),Select top n+1*from(select top m*from tbl_question)tbl_question order by id desc,Select语句(数据排序),列出n%条记录,Select top 10 percent*from tbl_stu,随机列出n条记录,Select top 5*from tbl_question order by newid(),不显示重复值,Select distinct stu_name from tbl_st

24、u,Select语句(汉字排序),按姓氏笔画排序,select*from tb_stu06 order by 姓名 collate chinese_prc_stroke_cs_as_ks_ws,按音序排序,select*from tb_stu06 order by 姓名collate chinese_prc_cs_as,Select语句(动态排序),CASE条件语句的语法格式简单CASE函数Case input_expressionWhen when_expression then result_expression.nElse else_result_expressionEND2.CASE搜

25、索函数Case When boolean_expression then result_expression.nELSE else_result_expressionEND,Select语句(动态排序),Select 学生编号,学生名称,所在班级,学生成绩=case when 学生成绩 is null then 暂无成绩!when 学生成绩 is not null then 有成绩!end from tb_StuXueSheng03,Select语句(动态排序),select rq,sum(case when shengfu=胜 then 1 else 0 end)胜,sum(case whe

26、n shengfu=负then 1 else 0 end)负from matchgroup by rq,Select语句(操作字符串),截取字符串,Select stu_id,substring(stu_name,1,4),age from tbl_stu,Select stu_id,left(stu_name,1),age from tbl_stu,Select stu_id,Right(stu_name,1),age from tbl_stu,去除尾部空格,Select 学号,rtrim(学号)as 去空格后,姓名,rtrim(姓名)as 去空格后,专业,rtrim(专业)as 去空格后f

27、rom tb_stu04,Select语句(操作字符串),使用”+”连接字符串,select 书名,类别,(书名+的类别为+类别)as 说明from tb_book04,Select语句(操作字符串),使用stuff函数插入字符串Stuff(character_expression,start,length,character_expression),Select 学号,姓名,stuff(学号,2,2,200800)as 新学号from tb_stu04,获取字符在字符串中出现的次数,Select len(apples is in the apple tree)-len(replace(app

28、les is in the apple tree,p,)/len(p)as afrom tb_name04,Select语句(操作字符串),替换字符串,使用replace函数将字符串中某一字符替换成另一字符,Eg:select replace(dsfsdfsfdsf*fd,d,*)as 替换后,字符串大小写转换,Uper(character_expression)Lower(character_expression),select upper(firstname)as up_firstname,lower(lastname)as low_lastnamefrom tb_name04,Selec

29、t语句(格式化字符串),在字符串查询中,可以将字符串格式化为需要的格式,以增加结果集的可读性。,charindex函数,Charindex函数用于返回字符串中指定表达式的起始位置,语法:Charindex(expression1,expression2,start_location),Eg:select 电话号码 as 提取前,left(电话号码,charindex(-,电话号码)-1)as 区号,substring(电话号码,charindex(-,电话号码)+1,len(电话号码)-charindex(-,电话号码)as 号码 from tb_tel04,Select语句(格式化字符串),

30、用“”代替过长的字符串显示,select str1,case when len(str1)10 then left(str1,10)+.else str1 end as news_strfrom tb_tb04,求07/08级各有多少学生?,select sum(case when left(stu_id,2)=07 then 1 else 0 end)07级人数,sum(case when left(stu_id,2)=08 then 1 else 0 end)08级人数from tbl_stu,Select语句(聚合函数),SUM函数(汇总),SELECT SUM(数量)AS 总数量,SU

31、M(单价)AS 总金额 FROM tb_xsb07,AVG函数(平均),SELECT AVG(语文)AS 语文,AVG(代数)AS 代数,AVG(几何)AS 几何,AVG(英语)AS 英语 FROM tb_stuAchievement07,MAX函数(最大值),SELECT MAX(销售额)AS 最高销售额 FROM tb_seller07,MIN函数(最小值),SELECT MIN(销售额)AS 最低销售额 FROM tb_seller07,Select语句(聚合函数),COUNT函数(总计记录条数),SELECT COUNT(*)AS 日销售数量 from tb_bookSell07 wh

32、ere 日期=2005-10-6,Select语句(分组统计),GROUP BY子句创建简单分组,SELECT 商品类别 FROM tb_goods07 GROUP BY 商品类别,GROUP BY子句创建多列组合列,SELECT 书名,出版社 FROM tb_bookSell07 GROUP BY 书名,出版社,GROUP BY对统计结果进行排序,SELECT 学生编号,学生姓名,sum(高数+外语+计算机文化基础+马经+数据库管理+数据结构+软件工程)AS 总成绩 FROM tb_StuMark07 GROUP BY 学生编号,学生姓名ORDER BY 总成绩 DESC,Select语句(

33、分组统计),Having子句,SELECT 书名,出版社,SUM(金额)AS 总计金额FROM tb_BookSell07GROUP BY 书名,出版社HAVING SUM(金额)500,Having子句与WHERE子句的联合使用,Select class_name,count(*)as 人数from tbl_stu,tbl_classwhere tbl_stu.class_id=tbl_class.class_idgroup by class_name,Select语句(分组统计),在分组查询中使用CUBE运算符,cube运算符的主要作用是自动对Group By子句中列出的字段进行分组汇总运

34、算。,Select 班级,性别,avg(语文)语文平均成绩,avg(代数)代数平均成绩,avg(几何)几何平均成绩,avg(英语)英语平均成绩 from tb_stuAchievement07group by 班级,性别with cube,Select语句(分组统计),在分组查询中使用ROLLUP,select 班级,性别,avg(语文)语文平均成绩,avg(代数)代数平均成绩,avg(几何)几何平均成绩,avg(英语)英语平均成绩 from tb_stuAchievement07group by 班级,性别with rollup,Select语句(分组统计),使用COMPUTE子句在同一结果

35、集中显示明细和汇总,computeAVG|COUNT|MAX|MIN|STDEV|STDEVP|VAR|VARP|SUM(expression),.nBy expression,n,select*from tb_pay07order by 所属部门compute avg(工资),SELECT*FROM tb_pay07 ORDER BY 所属部门COMPUTE SUM(工资)BY 所属部门,Select语句(使用子查询),简单子查询,SELECT 姓名,工资,所属部门,(SELECT AVG(工资)FROM tb_apay08)AS 平均工资,(工资-(SELECT AVG(工资)FROM t

36、b_apay08)AS 与平均工资的差额FROM tb_apay08,为子查询命名,SELECT*FROM(SELECT 挂账单位,SUM(欠款金额)AS 金额 FROM tb_agzmx08 GROUP BY 挂账单位)tb1ORDER BY 金额 ASC,Select语句(使用子查询),在子查询中使用聚合函数,SELECT 姓名,工资,所属部门FROM tb_apay08WHERE 工资(SELECT AVG(工资)FROM tb_apay08),使用子查询更新数据,UPDATE tb_aMesell08 SET 药品名称=润洁WHERE 药品名称 IN(SELECT 药品名称 FROM

37、tb_aMesell08 WHERE 药品编号=YB004),Select语句(使用子查询),使用子查询删除数据,DELETE tb_aMesell08WHERE 药品名称 IN(SELECT 药品名称 FROM tb_aMesell08 WHERE 药品编号=YB001),Select语句(使用子查询),在嵌套中使用EXISTS谓词,SELECT 学生姓名,所在学院,家庭住址FROM tb_aStuInfo08 IWHERE EXISTS(SELECT 学生姓名 FROM tb_aStuMark08 M WHERE M.学生姓名=I.学生姓名 AND 外语 80),select 学生姓名,所

38、在学院,家庭住址 from tb_aStuInfo08where 学生编号 in(select 学生编号 from tb_aStuMark08 where 外语80),在一些情况下,只要子查询返回一个真值和假值.只考虑是否满足谓词条件,数据内容本身并不重要.,Select语句(日期查询),使用between and 查询某一时间段内的数据,select*from tb_student06where 入校时间 between 01.09.01 and 01.09.05,使用关系运算符查询某一时间段内的数据,select 姓名,入校时间 from tb_student06where 入校时间 01

39、.09.01 and 入校时间 01.09.05,使用in运算符查询几个时间的数据,SELECT 书名,出版日期 FROM tb_booksell06 where 出版日期 in(2005-1-12,2005-1-25),Select语句(日期查询),查询某一月份的数据 要实现按月查询数据可以使用日期函数month().语法:month(date),select 书名,出版日期 from tb_bookSell06where month(出版日期)=1 order by 出版日期,查询今天是周几,select datename(dw,getdate()as 今天是周几,Datename(int

40、erval,date),Select语句(日期查询),datename()函数中的interval,yyyy:返回指定时间的年份Q:返回指定时间的季度M:返回指定时间的月份D:返回指定时间是本月的第几天DY:返回指定时间是本年的第几天W:返回指定日期是本周的周几Ww:返回指定日期是一年中的第几周,select datename(yyyy,getdate()as 年份select datename(m,getdate()as 月份select datename(q,getdate()as 季度select datename(w,getdate()as 今天是周几select datename(w

41、w,getdate()as 第几周select datename(d,getdate()as 本月的第几天select datename(dy,getdate()as 本年的第几天,Select语句(日期查询),查询两个日期之间的天数,Datediff函数用于返回跨两个指定日期的日期与时间边界数其语法格式如下:Datediff(datepart,startdate,enddate),yyyy:返回年份差mm:返回月份差D:返回日差,select datediff(yyyy,2007-10-1,2008-10-1)as 年份差select datediff(mm,2007-10-1,2008-1

42、0-1)as 月份差select datediff(d,2007-10-1,2007-12-1)as 日差,Select语句(日期查询),查询3个月后的日期,Dateadd函数用于在向指定日期加上一段时间的基础上,返回新的datetime值.语法格式如下:Dateadd(datepart,number,date),select dateadd(mm,3,getdate()as DAY NUMBER,获取某月的第一天,select dateADD(mm,datediff(mm,0,2007-12-20),0)as DAY_NUMBER,Select语句,复制表结构,Select*into des

43、tion_table from source_table where 11,批量插入数据,Insert into table1(field1,field2,field3)select field1,field2,field3from table2,多表查询,笛卡尔乘积查询,笛卡尔乘积查询实际上就是两表之间的交叉联接实现查询的方式。,SELECT tb_userInfo09.*,tb_profession09.*FROM tb_userInfo09 CROSS JOIN tb_profession09,在多表联接中设置联接条件,SELECT 学生姓名,学生性别,学生年龄,课程名称,老师姓名 FR

44、OM tb_student09,tb_course09,tb_teacher09WHERE tb_student09.自动编号=tb_course09.编号 and tb_course09.自动编号=tb_teacher09.编号,多表查询,使用表别名,SELECT 学生姓名,学生性别,学生年龄,课程名称,老师姓名 FROM tb_student09 AS a,tb_course09 AS b,tb_teacher09 AS cWHERE a.自动编号=b.编号 and b.自动编号=c.编号,在多表联接中返回某个表的所有列名,SELECT tb_student09.*,课程名称FROM tb

45、_student09,tb_course09WHERE tb_student09.自动编号=tb_course09.编号,多表查询(内联接),等值联接,等值联接是指在联接条件中使用等号运算符比较被联接列的值,在查询结果中列出本联接表中的所有列,包括其中的重复列.,语法:Select fieldlistFrom table1INNER JOIN table2On table1.column=table2.column,SELECT tb_course09.课程名称,tb_teacher09.老师姓名FROM tb_course09 INNER JOIN tb_teacher09 ON tb_co

46、urse09.自动编号=tb_teacher09.编号,多表查询(内联接),不等联接,不等联接是指在联接条件中使用等于运算符以外的其它比较运算符比较被联接的值,SELECT tb_course09.自动编号,tb_course09.课程名称,tb_teacher09.编号,tb_teacher09.老师姓名FROM tb_course09 INNER JOIN tb_teacher09 ON tb_course09.自动编号tb_teacher09.编号,多表查询(内联接),自然联接,自然连接是一种特殊的联接,它只在两个表有相同名称的列且列的含义相似时才能使用,并将在同名列上进行相等联接自然联

47、接是指在联接条件中使用等号运算符比较被联接列的值,但它使用选择列表指出查询结果集合中所包括的列,并删除联接表中重复列,SELECT a.*,b.实发合计 FROM tb_mMRem09 AS a INNER JOIN tb_nMRpay09 AS b on a.人员编号=b.人员编号WHERE b.工资月份=3,Select a.*,b.实发合计 from tb_mMRem09 a,tb_nMRpay09 b where a.人员编号=b.人员编号 and b.工资月份=3,多表查询(外联接),左外联接(left outer join),SELECT a.部门编号,a.部门名称,a.负责人,b

48、.人员编号,b.人员姓名,b.部门名称,b.学历,b.技术职称FROM tb_nMRde09 a LEFT OUTER JOIN tb_mMRem09 b ON a.部门名称=b.部门名称,多表查询(外联接),右外联接(right outer join),SELECT*FROM tb_nMRde09 a RIGHT OUTER JOIN tb_nMRpay09 b ON a.部门名称=b.部门名称WHERE b.工资月份=10,多表查询(外联接),完全联接(full join),SELECT*FROM tb_student09 a FULL JOIN tb_course09 b ON a.自动

49、编号=b.编号,多表查询(自联接),SELECT a.员工姓名,a.基本工资,b.员工姓名,b.基本工资FROM tb_pay09 a INNER JOIN tb_pay09 b ON a.基本工资b.基本工,多表查询(静态交叉表),SELECT 员工姓名,SUM(CASE 所在部门 WHEN 食品部 THEN 销售业绩 ELSE NULL END)AS 食品部业绩,SUM(CASE 所在部门 WHEN 家电部 THEN 销售业绩 ELSE NULL END)AS 家电部业绩FROM tb_sell09 GROUP BY 员工姓名,多表查询(组合查询),使用UNION运算符组合两个表的数据,S

50、ELECT 学生编号 AS 编号,学生姓名 AS 姓名FROM tb_StuMark07 WHERE 高数85UNIONSELECT 编号,姓名 FROM tb_stuScore09 WHERE 高数85,使用UNION ALL保留重复行,SELECT*FROM tb_nemployee09 UNION ALL SELECT*FROM tb_nemployee09,INSERT语句,INSERT语句语法:,INSERT INTO VALUES(column value,.,lastcolumn value),INSERT语句,插入单行数据,INSERT INTO tb_em11 VALUES(

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号