SELECT查询语句_内外连接
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2012-9-5
------江阴职业技术学院计算机系------
Microsoft SQL Server 2005
13
简单Select 查询
SELECT StuId,StuName,DeptId,Sex FROM Tb_Student
SELECT * FROM Tb_Student
2012-9-5
2012-9-5
------江阴职业技术学院计算机系------
Microsoft SQL Server 2005
2
数据定义语言
• 数据定义语言 (Data Definition Language, DDL) 是SQL语言集中,负责数据结构定义 与数据库对象定义的语言,由CREATE、 ALTER与DROP三个语法所组成。
2012-9-5 ------江阴职业技术学院计算机系-----Microsoft SQL Server 2005 7
INSERT指令
• INSERT 是将数据插入到数据库对象中的指令,可以插入 数据的数据库对象有数据表以及可更新视图两种。 • 基本格式有: • INSERT INTO [数据表或可更新视图名称] (字段1,字段2, 字段3, ...) VALUES (值1, 值2, 值3, ...) -- 只需要根据对应的字段來设定插入值。 • INSERT INTO [数据表或可更新视图名称] VALUES (值1, 值2, 值3, ...) -- 必須要指定所有字段的插入值。 • 例如: • INSERT INTO MyTable (字段1,字段2,字段3,字段4,字段5) VALUES (1, 2, 3, '4', '5')
结构化查询语言(SQL)
• 结构化查询语言:一种数据库查询和编程语言,广泛应用 于访问、查询、更新和管理关系数据库系统中的数据。 -------------------------------------------------------------------------------• SQL 全名是结构化查询语言(Structured Query Language),是用于数据库中的标准数据查询语言,IBM 公司最早使用在其开发的数据库系统中。1986年10月,美 国 ANSI 对 SQL 进行规范后,以此作为关系型数据库管理 系统的标准语言,1987年得到国际标准组织的支持下成为 国际标准。 -------------------------------------------------------------------------------• SQL语言包含3个部分: 数据定义(DDL)语言(如CREATE, DROP,ALTER等语句) 数据操纵(DML)语言(SELECT,INSERT, UPDATE, DELETE语句) 数据控制语言(如GRANT,REVOKE, ROLLBACK等语句)
Microsoft SQL Server 2005
17
逻辑运算符和表达式
运算符 含 义 AND 如果两个布尔表达式都为 TRUE,那么就为 TRUE OR NOT 如果两个布尔表达式中的一个为 TRUE,那么就为 TRUE 对任何其他布尔运算符的值取反
SELECT * FROM Tb_Student WHERE Sex= 'M' and Sex= 'F' SELECT * FROM Tb_Student WHERE ClassId= 'S040201101' and Sex= 'F'
2012-9-5
------江阴职业技术学院计算机系------
Microsoft SQL Server 2005
6
数据操纵语言
• 数据操纵语言 (Data Manipulation Language) 是SQL语言中,负责对数据库 对象执行数据存取工作的指令集,以 SELECT、INSERT、UPDATE、DELETE 四种指令为核心。 • DML的主要功能即是存取数据,因此其语 法都是以读取与写入数据库为主,除了 INSERT以外,其他三种指令都可能需搭配 WHERE指令来过滤数据范围,或是不加 WHERE指令来存取全部的数据。
2012-9-5 ------江阴职业技术学院计算机系-----Microsoft SQL Server 2005 9
DELETE 指令
• DELETE 指令从数据库对象中删除数据的 指令,基本语法为: • DELETE FROM [数据表或可更新视图名称] WHERE [给定条件] • 例如: • DELETE FROM MyTable WHERE 字段3 = 1918299 值为字符时,加西文单引号。
列表运算符
字符匹配符 未知值
IN、NOT IN
LIKE、NOT LIKE IS NULL、IS NOT NULL
查询值是否属于列表值之一
字符串是否匹配 查询值是否为NULL
2012-9-5
------江阴职业技术学院计算机系------
Microsoft SQL Server 2005
16
比较运算符和表达式
2012-9-5
------江阴职业技术学院计算机系------
Microsoft SQL Server 2005
15
WHERE子句使用的运算符
类别 比较运算符 逻辑运算符 范围运算符
运算符 =、>、<、>=、<=、<> AND、OR、NOT BETWEEN、NOT BETWEEN
说明 比较两个表达式 组合两个表达式的运算结果或取 反 查询值是否在范围内
2012-9-5
------江阴职业技术学院计算机系------
Microsoft SQL Server 2005
4
ALTER指令
• ALTER • ALTER 是R TABLE Tb_Student ADD column_b VARCHAR(20) NULL ; -- 在数据表 Tb_Student中加入一个新的字段,名 称为 column_b,字段类型为 varchar(20),允许 NULL值。 ALTER TABLE Tb_Student DROP COLUMN column_b ; -- 在数据表 Tb_Student中移除 column_b 字段。
Lecture 5 基本SELECT查询语句
------------------------------------------------------目标要求: 掌握使用数据定义(DDL)定义数据库、数据 表等对象。 熟练掌握简单查询、嵌套查询、连接查询、 分组与计算查询、集合的并运算。
2012-9-5 ------江阴职业技术学院计算机系-----Microsoft SQL Server 2005 1
SELECT * FROM Tb_Student WHERE NOT Sex= 'M'
2012-9-5
------江阴职业技术学院计算机系------
Microsoft SQL Server 2005
18
范围搜索运算符和表达式
类别 范围运算符 列表运算符 运算符 BETWEEN、NOT BETWEEN IN、NOT IN 说明 查询值在范围内 查询值属于列表值之一
2012-9-5
------江阴职业技术学院计算机系------
Microsoft SQL Server 2005
11
Select 查询
2012-9-5
------江阴职业技术学院计算机系------
Microsoft SQL Server 2005
12
简单Select 查询
简单的Transact-SQL查询只包括选择列表、 FROM子句和WHERE子句。它们分别说明所查询列、 查询的表或视图、以及搜索条件等。 -------------------------------------------------------------------• • • • • 语法: SELECT 字段1,字段2,… FROM 表名 SELECT * FROM 表名 SELECT 字段1,字段2,… FROM 表名 WHERE 查询条件 SELECT * FROM 表名 WHERE 查询条件
------江阴职业技术学院计算机系------
Microsoft SQL Server 2005
14
简单Select 查询
SELECT StuId,StuName,DeptId,Sex FROM Tb_Student WHERE Sex='F'
SELECT * FROM Tb_Teacher WHERE Sex='F' and DeptId= '08'
2012-9-5
------江阴职业技术学院计算机系------
Microsoft SQL Server 2005
3
CREATE指令
• • • • • • • • CREATE是负责数据库对象的建立 CREATE DATABASE CREATE TABLE CREATE INDEX:创建数据表索引。 CREATE PROCEDURE:创建存储过程。 CREATE FUNCTION:创建用户自定义函数。 CREATE VIEW:创建视图。 CREATE TRIGGER:创建触发器。
• SELECT * FROM Tb_Student WHERE Age BETWEEN 20 TO 22 --------------------------------------------------------------------------------------• SELECT * FROM Tb_Student WHERE Age NOT BETWEEN 20 TO 22 --------------------------------------------------------------------------------------• SELECT * FROM Tb_Student WHERE Age IN (20,21,22) ---------------------------------------------------------------------------------------
2012-9-5
------江阴职业技术学院计算机系------
Microsoft SQL Server 2005
8
UPDATE 指令
• UPDATE 指令是依给定条件,将符合条件的数据 表中的数据更新为新的数值,其基本格式为: • UPDATE [数据表或可更新视图名称] SET 字段1=值1,字段2=值2,字段3=值3, ... WHERE [指定条件] • 例如: • UPDATE MyTable SET 字段1 = 3,字段2 = 5, 字段4 = 5 WHERE 字段3 = 198273
2012-9-5
------江阴职业技术学院计算机系------
Microsoft SQL Server 2005
10
数据控制语言
• 数据控制语言 (Data Control Language) 在SQL语言中, 是一种可对数据存取权进行控制的指令,它可以控制特定 用户对数据表、视图、存储过程、用户自定义函数等数据 库对象的控制权。由 GRANT 和 REVOKE 两个指令组成。 • GRANT 的语法结构为: • GRANT [权限] ON [要授予权限的数据库对象] TO [用户] WITH [授权选项] • DENY 的语法结构为: • DENY [权限] ON [要拒绝权限的数据库对象] TO [用户] • 权限可以是INSERT\UPDATE等,参见教材p230
2012-9-5
------江阴职业技术学院计算机系------
Microsoft SQL Server 2005
5
DROP指令
• DROP • DROP 则是删除数据库对象的指令,并且只需要 指定要删除的数据库对象名称即可,在 DDL 语法 中算是最简单的。 • 例如: • DROP TABLE MyTable; • -- 刪除 MyTable 数据表。 • DROP VIEW MyView; • -- 刪除 MyView 视图。
运 算 符 = > < >= <= <> 含 义 等于 大于 小于 大于等于 小于等于 不等于
SELECT * FROM Tb_Student WHERE StuName<>'张三' SELECT * FROM Tb_Student WHERE Sex= 'F'
2012-9-5
------江阴职业技术学院计算机系------