第4章数据查询 第4章数据查询 数据库将数据合理地组织在一起。数据查询则是从数 据库中检索符合条件的数据记录的选择过程,它是数据库 中一个最常用的操作。本章要点:分 4 SELECT语句 42基本查询 43高级查询 国
第4章 数据查询 第4章 数据查询 数据库将数据合理地组织在一起。数据查询则是从数 据库中检索符合条件的数据记录的选择过程,它是数据库 中一个最常用的操作。本章要点: 4.1 SELECT语句 4.2 基本查询 4.3 高级查询
第4章数据查询 4.1 SELECT语句 SELECT语句的作用是让数据库服务器根据客户的要求 从数据库中搜索出所需要的信息资料,并且可以按规定的 格式进行分类、统计、排序,再返回给客户。语法形式为: SELECT [ALL DISTINCT] [TOP n PERCENT select list INTO new table 关键字 M table name源表名 进入结果 集的列 I WHERE search condition I I GROUP BY group by expression I HAVING search condition I ORDER BY order expression L ASC DESC
第4章 数据查询 4.1 SELECT语句 SELECT语句的作用是让数据库服务器根据客户的要求 从数据库中搜索出所需要的信息资料,并且可以按规定的 格式进行分类、统计、排序,再返回给客户。语法形式为: SELECT [ALL|DISTINCT] [TOP n PERCENT ] select_list [ INTO new_table ] FROM table_name [ WHERE search_condition ] [ GROUP BY group_by_expression ] [ HAVING search_condition ] [ ORDER BY order_expression [ ASC | DESC ] ] 关键字 进入结果 集的列 源表名
第4章数据查询 42基本查询 当使用 SELECT语句时,可以用两种方式来控制返回 的数据:选择列和选择行。 选择列就是垂直地划分数据,限制返回结果中的列 这由 SELECT语句中的 SELECT-子句指定要返回的列来控制 令选择行则是水平地划分数据,限制返回结果中的行, 这由 SELECT语句中的WERE子句指定选择条件来控制 4.2.1选择列 1.指定列 SELECT column namel[, column name2,.. FROM table name
第4章 数据查询 4.2 基本查询 当使用SELECT语句时,可以用两种方式来控制返回 的数据:选择列和选择行。 ❖ 选择列就是垂直地划分数据,限制返回结果中的列, 这由SELECT语句中的SELECT子句指定要返回的列来控制; ❖ 选择行则是水平地划分数据,限制返回结果中的行, 这由SELECT语句中的WHERE子句指定选择条件来控制。 4.2.1 选择列 1.指定列 SELECT column_name1[,column_name2,…] FROM table_name
第4章数据查询 例4-1我们选择 Products表中的产品1D、产品名称 ( ProductName)和单价( Price)三列。 USE Sales GO SELECT ProductID ProductName. Price FROM Products 注意: ◆在数据查询时,列的显示顺序由 SELECT语句的 SELECT子句指定,顺序可以和列定义时顺序不同, 这并不影响数据在表中的存储顺序 在查找多列内容时,用‘,’将各字段分开
第4章 数据查询 例4-1 我们 选择Products表中的 产品ID 、产品 名称 (ProductName)和单价(Price)三列。 USE sales GO SELECT ProductID,ProductName,Price FROM Products 注意: ❖在数据查询时,列的显示顺序由SELECT语句的 SELECT子句指定,顺序可以和列定义时顺序不同, 这并不影响数据在表中的存储顺序。 ❖在查找多列内容时,用‘ , ’将各字段分开
第4章数据查询 2.选择所有列 在 SELECT子句中可以使用星号(*),显示表中所有 的列。 例4-2显示 Orders表中的所有信息。 SELECT X FROM Orders 3.使用计算列 在 SELECT子句中可以使用算术运算符对数值型数据 列进行加(+)、减(-)、乘(*)、除()和取模(%) 运算,构造计算列。 国
第4章 数据查询 2.选择所有列 在SELECT子句中可以使用星号(*),显示表中所有 的列。 例4-2 显示Orders表中的所有信息。 SELECT * FROM Orders 3.使用计算列 在SELECT子句中可以使用算术运算符对数值型数据 列进行加(+)、减(-)、乘(*)、除(/)和取模(%) 运算,构造计算列
第4章数据查询 例4-3从 Products表中检索出产品ID( ProductID)、产品名 称( ProductName)、产品单价( Price)、产品库存量 ( Stocks)及产品的总价值,查询如图4-2所示。 SELECT ProductID ProductName Price. Stocks Price* Stocks FROM Products 例4-4从pubs数据库的 authors表查询作者的姓和名,以及作 者所居住的州和城市的名字,查询结果如图4-3所示。 USE pubs GO SELECT au Iname+ +au fname, city++state FROM authors 国
第4章 数据查询 例4-3 从Products表中检索出产品ID(ProductID)、产品名 称(ProductName)、产品单价(Price)、产品库存量 (Stocks)及产品的总价值,查询如图4-2所示。 SELECT ProductID,ProductName,Price,Stocks,Price*Stocks FROM Products 例4-4 从pubs数据库的authors表查询作者的姓和名,以及作 者所居住的州和城市的名字,查询结果如图4-3所示。 USE pubs GO SELECT au_lname+'.'+au_fname,city+','+state FROM authors
第4章数据查询 4.增加说明列 为了增加查询结果的可读性,可以在 SELECT子句中增 加一些说明列,增加的说明文字串需用单引号括起来 例4-5从pubs数据库的 publishers表中查询出版商ID及出版 商名字,查询结果如图44所示。 SELECT pub id, publisher name is: pub name FROM publishers 5.改变列标题 如果我们想改变查询结果中所显示的列标题,可以在 SELECT语句中使用‘列标题’=列名或列名AS“列标 题’两种方法。 国
第4章 数据查询 4.增加说明列 为了增加查询结果的可读性,可以在SELECT子句中增 加一些说明列,增加的说明文字串需用单引号括起来。 例4-5 从pubs数据库的publishers表中查询出版商ID及出版 商名字,查询结果如图4-4所示。 SELECT pub_id,'publisher name is: ',pub_name FROM publishers 5.改变列标题 如果我们想改变查询结果中所显示的列标题,可以在 SELECT语句中使用‘列标题’=列名 或 列名 AS ‘列标 题’两种方法
第4章数据查询 例4-6为例43中的计算列指定一个列标题“总价值” SELECT ProductID ProductName Price Stocks 'total cost=Price* Stocks FROM Products 例4-7按如下格式显示销售员信息 姓名性别。出班生日:地址 SELECT SaleName as姓名’, Sex as性别’, Birthday As'出生日期, Address as地址 FROM Salers
第4章 数据查询 例4-6 为例4-3中的计算列指定一个列标题“总价值” 。 SELECT ProductID,ProductName,Price, Stocks,'total cost'=Price*Stocks FROM Products 例4-7 按如下格式显示销售员信息。 SELECT SaleName AS ‘姓名’,Sex AS ‘性别’ , Birthday AS '出生日期',Address AS '地址' FROM Salers
第4章数据查询 4.2.2选择行 使用 WHERE子句的目的是从表中筛选出符合条件的 行,其语法形式如下: SELECT column namelY column name2 FROM table name WHERE Search condition 今:定义查询条件。 SQL Server支持的査询条件包括比较运算、逻辑运算 模糊匹配、范围、列表、以及是否为空。 国
第4章 数据查询 4.2.2 选择行 使用WHERE子句的目的是从表中筛选出符合条件的 行,其语法形式如下: SELECT column_name1[,column_name2,…] FROM table_name WHERE search_condition ❖ :定义查询条件。 SQL Server支持的查询条件包括比较运算、逻辑运算、 模糊匹配、范围、列表、以及是否为空
第4章数据查询 1.使用比较运算符 WHERE子句中允许使用的比较运算符包括: 运算符 描述 等于 小于 大于 >、l=4 不等于 I>e 不大于 1<e 不小于 大于等于 =4 小于等于 例4-8查询 Products表中价格小于5的产品记录。 SELECT ProductID, ProductName, PriceFROM products WHERE Price<5.0
第4章 数据查询 1.使用比较运算符 WHERE子句中允许使用的比较运算符包括: 例4-8 查询Products表中价格小于5的产品记录。 SELECT ProductID,ProductName,PriceFROM products WHERE Price<5.0