SQL查询语句学习答案

第一部分SQL查询语句的学习

没有安装SQL Server,只有Access,所以就在Access中操作,Access中的SQL语句与SQL Server中有一点不一样,但是不影响总体的学习,触类旁通,共勉。 所使用的数据库数据是Northwind.mdb

单表查询

--查询订购日期在1996年7月1日至1996年7月15日之间的订单的订购日期、订单ID、客户ID和雇员ID等字段的值 SQL语句:

select 订单ID, 客户ID, 雇员ID, 订购日期 from 订单

where 订购日期 between #1996-07-01# and #1996-07-15#

截图:

--查询“Northwind”示例数据库中供应商的ID、公司名称、地区、城市和电话字段的值。条件是“地区等于华北”并且“联系人头衔等于销售代表”。 SQL语句:

select 供应商ID, 公司名称, 地区, 城市, 电话 from 供应商

where 地区='华北' and 联系人职务='销售代表'

截图:

--查询“Northwind”示例数据库中供应商的ID、公司名称、地区、城市和电话字段的值。其中的一些供应商位于华东或华南地区,另外一些供应商所在的城市是天津 SQL语句:

select 供应商ID, 公司名称, 地区, 城市, 电话 from 供应商

where 地区 in ('华北','华南') or 城市='天津'

截图:

--查询“Northwind”示例数据库中位于“华东”或“华南”地区的供应商的ID、公司名称、地区、城市和电话字段的值

SQL语句:

select 供应商ID, 公司名称, 地区, 城市, 电话 from 供应商

where 地区='华东' or 地区='华南'

截图:

多表查询

--查询订购日期在1996年7月1日至1996年7月15日之间的订单的订购日期、订单ID、相应订单的客户公司名称、负责订单的雇员的姓氏和名字等字段的值,并将查询结果按雇员的“姓氏”和“名字”字段的升序排列,“姓氏”和“名字”值相同的记录按“订单 ID”的降序排列

SQL语句:

select 订购日期, 订单ID, 公司名称, 姓氏, 名字 from 订单, 雇员, 客户

where 订购日期 between #1996-07-01# and #1996-07-15# and 订单.客户ID = 客户.客户ID

and 订单.雇员ID = 雇员.雇员ID order by 姓氏, 名字 ASC, 订单ID DESC

截图:

--查询“10248”和“10254”号订单的订单ID、运货商的公司名称、订单上所订购的产品的名称

SQL语句:

select 订单.订单ID, 公司名称, 产品名称 from 订单, 运货商, 产品, 订单明细

where 订单.订单ID in (10248,10254) and 订单.运货商 = 运货商.运货商ID and 订单.订单ID = 订单明细.订单ID and 订单明细.产品ID = 产品.产品ID

截图:

--查询“10248”和“10254”号订单的订单ID、订单上所订购的产品的名称、数量、单价和折扣

SQL语句:

select 订单.订单ID, 产品名称, 数量, 订单明细.单价, 折扣 from 订单, 产品, 订单明细

where 订单.订单ID in (10248, 10254)

and 订单.订单ID = 订单明细.订单ID and 订单明细.产品ID = 产品.产品ID

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4