SQL基本SELECT查询语句_内外连接

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

2012-4-13
------江阴职业技术学院计算机系-----------江阴职业技术学院计算机系-----江阴职业技术学院计算机系
Microsoft SQL Server 2005
15
ORDER BY子句
SELECT StuId,StuName,Sex FROM Tb_Student WHERE DeptId=‘08’ ORDER BY StuName,Sex 结果如何?
• 相当于 SELECT * FROM Tb_Student WHERE Age=20 OR Age=21 OR Age=22
2012-4-13 Microsoft SQL Server 2005 9
------江阴职业技术学院计算机系-----------江阴职业技术学院计算机系-----江阴职业技术学院计算机系
2012-4-13
------江阴职业技术学院计算机系-----------江阴职业技术学院计算机系-----江阴职业技术学院计算机系
Microsoft SQL Server 2005
13
ORDER BY子句
使用SELECT语句进行数据查询,为了按一 定顺序浏览数据,可以使用ORDER BY子句对生 成的查询结果进行排序。ORDER BY子句在 SELECT语句中的语法格式如下: ------------------------------------------------------------------SELECT 字段1,字段2,… FROM 表名 WHERE 查询条件 ORDER BY 排序表达式 [ASC | DESC]
SELECT * FROM Tb_Student WHERE StuName LIKE '张%' SELECT * FROM Tb_Student WHERE StuName NOT LIKE '张三'
2012-4-13 ------江阴职业技术学院计算机系-----------江阴职业技术学院计算机系-----江阴职业技术学院计算机系 Microsoft SQL Server 2005 10
Select 查询
2012-4-13
------江阴职业技术学院计算机系-----------江阴职业技术学院计算机系-----江阴职业技术学院计算机系
Microsoft SQL Server 2005
1
SELECT语法总结
• • • • • • SELECT */字段名,字段名…… FROM 表名 [ WHERE 条件表达式 ] [ GROUP BY 分组的字段名 ] [ HAVING 条件表达式] [ ORDER BY 排序的字段名 [ ASC | DESC ] ]
类别 比较运算符 逻辑运算符 范围运算符 列表运算符 字符匹配符 未知值
运算符 =、>、<、>=、<=、<> AND、OR、NOT BETWEEN、NOT BETWEEN IN、NOT IN LIKE、NOT LIKE IS NULL、IS NOT NULL
说明 比较两个表达式 组合பைடு நூலகம்个表达式的运算结果或取 反 查询值是否在范围内 查询值是否属于列表值之一 字符串是否匹配 查询值是否为NULL
2012-4-13
------江阴职业技术学院计算机系-----------江阴职业技术学院计算机系-----江阴职业技术学院计算机系
Microsoft SQL Server 2005
6
比较运算符和表达式
运 算 符 = > < >= <= <> 含 义 等于 大于 小于 大于等于 小于等于 不等于
2012-4-13
------江阴职业技术学院计算机系-----------江阴职业技术学院计算机系-----江阴职业技术学院计算机系
Microsoft SQL Server 2005
14
ORDER BY子句
SELECT StuId,StuName,Sex FROM Tb_Student WHERE DeptId=‘08’ ORDER BY StuName SELECT StuId,StuName,Sex FROM Tb_Student WHERE DeptId=‘08’ ORDER BY StuName DESC
SELECT * FROM Tb_Student WHERE StuName<>'张三' SELECT * FROM Tb_Student WHERE Sex= 'F'
2012-4-13
------江阴职业技术学院计算机系-----------江阴职业技术学院计算机系-----江阴职业技术学院计算机系
2012-4-13
------江阴职业技术学院计算机系-----------江阴职业技术学院计算机系-----江阴职业技术学院计算机系
Microsoft SQL Server 2005
16
ORDER BY子句
• ORDER BY子句总是位于WHERE子句(如果有的话)后 面,可以包含一个或多个列,每个列之间以逗号分隔。这 些列可能是表中定义的列,也可能是SELECT子句中定义 的计算列。 ------------------------------------------------------------------------------• 在SQL Server 2005中,汉字比其它字符值都要大,而汉 SQL 2005 字之间的大小比较是取决于其拼音首字母的大小。 • 如果没有特别说明,值是以升序序列进行排序的。当然, 你也可以选择使用ASC关键字指定升序排序。 ------------------------------------------------------------------------------• 如果你希望以降序排列,则在ORDER BY后面使用DESC 关键字。
模式匹配运算符和表达式
通配符 % 说明 匹配零个或多个字符的任意字 符串。 示例 LIKE '%林%' 姓名中包含有“林”的信息。
LIKE '林_' _ 匹配任何单个字符。 姓名第一个字为“林”并且名字只有 下划线 一个汉字只使用一个"_"表示 两个字。 匹配指定范围 ([a-f]) 或集 LIKE '[张王]%' [ ] 合([abcdef]) 中的任何单 姓张或姓王的信息。 个字符。 匹配不属于指定范围 ([a-f]) LIKE '王[^林]%' [^] 或集合 ([abcdef]) 中的 姓王且第二个字不是林的信息。 任何单个字符。
上述“[ ]”表示可选项,“ | ”表示取其中之一。
2012-4-13
------江阴职业技术学院计算机系-----------江阴职业技术学院计算机系-----江阴职业技术学院计算机系
Microsoft SQL Server 2005
2
简单Select 查询
简单的Transact-SQL查询只包括选择列表、 FROM子句和WHERE子句。它们分别说明所查询列、 查询的表或视图、以及搜索条件等。 -------------------------------------------------------------------• • • • • 语法: SELECT 字段1,字段2,… FROM 表名 SELECT * FROM 表名 SELECT 字段1,字段2,… FROM 表名 WHERE 查询条件 SELECT * FROM 表名 WHERE 查询条件
• 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) ---------------------------------------------------------------------------------------
未知值条件
• NULL表示未知的,不可用或将在以后添加的数据。 NULL值与零、零长度的字符串的含义不同。 • 在WHERE子句中,使用IS NULL或IS NOT NULL条件可以查询某一数据值是否为NULL的数 据信息。 • 例如:
SELECT * FROM Tb_Course WHERE CourseName IS NULL SELECT * FROM Tb_Grade WHERE RetestScore IS NOT NULL
SELECT * FROM Tb_Student
2012-4-13
------江阴职业技术学院计算机系-----------江阴职业技术学院计算机系-----江阴职业技术学院计算机系
Microsoft SQL Server 2005
4
简单Select 查询
SELECT StuId,StuName,DeptId,Sex FROM Tb_Student WHERE Sex='F'
Microsoft SQL Server 2005
7
逻辑运算符和表达式
运算符 含 义 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' SELECT * FROM Tb_Student WHERE NOT Sex= 'M'
2012-4-13 Microsoft SQL Server 2005 11
------江阴职业技术学院计算机系-----------江阴职业技术学院计算机系-----江阴职业技术学院计算机系
字符串运算符和表达式
• 字符串表达式是用字符串连接符(+)将字符型 常量、变量、字符串函数连接组成的式子。字符 串表达式的计算结果包括两个字符串内的空格和 所有字符,仍然是字符型。 • 如 '我爱'+' 我家' • 表达式的值为: '我爱 我家' ------------------------------------------------------------------例如:'Beijing'+' Huanying '+' Ning!‘ 请写出结果!
SELECT * FROM Tb_Teacher WHERE Sex='F' and DeptId= '08'
2012-4-13
------江阴职业技术学院计算机系-----------江阴职业技术学院计算机系-----江阴职业技术学院计算机系
Microsoft SQL Server 2005
5
WHERE子句使用的运算符
2012-4-13
------江阴职业技术学院计算机系-----------江阴职业技术学院计算机系-----江阴职业技术学院计算机系
Microsoft SQL Server 2005
8
范围搜索运算符和表达式
类别 范围运算符 列表运算符 运算符 BETWEEN、NOT BETWEEN IN、NOT IN 说明 查询值在范围内 查询值属于列表值之一
2012-4-13
------江阴职业技术学院计算机系-----------江阴职业技术学院计算机系-----江阴职业技术学院计算机系
Microsoft SQL Server 2005
3
简单Select 查询
SELECT StuId,StuName,DeptId,Sex FROM Tb_Student
2012-4-13
------江阴职业技术学院计算机系-----------江阴职业技术学院计算机系-----江阴职业技术学院计算机系
Microsoft SQL Server 2005
12
运算符的优先级
• 运算符的优先级决定了表达式的计算和比较操作顺序。 运算符的优先级由高到低的顺序为: • 1)括号:()。 • 2)正、负或取反运算:+、-、~。 • 3)乘、除、求模运算:*、/、%。 • 4)加、减、字符连接运算:+、-、+。 4 + - + • 5)比较运算:=、>、<、>=、<=、<>、!=、!>、!<。 • 6)位运算 位运算:^、&、|。 位运算 • 7)逻辑非运算:NOT。 • 8)逻辑与运算:AND。 • 9) BETWEEN、IN、LIKE、OR等运算。 • 10)赋值运算:=。
相关文档
最新文档