PTA 10-101 A1-2根据所在国家查找订单信息

本文提供了多个SQL查询案例,包括从订单表中筛选特定国家的订单信息、查询顾客表中的不重复城市、查找产品表中库存数量超过设定阈值的产品详情等。

订单表(orders)中找出所在国家(ShipCountry)GermanyBrazilFrance订单编号(OrderID)顾客编号(CustomerID)

提示:请使用SELECT语句作答。

表结构:

列名数据类型长度主码说明
OrderIDint11订单编号
CustomerIDvarchar5顾客编号
EmployeeIDint11员工编号
OrderDatedatetime,订购日期
RequiredDatedatetime,预计到达日期
ShippedDatedatetime,发货日期
ShipViaint11运货商
Freightdecimal10,4运费
ShipNamevarchar40货主姓名
ShipAddressvarchar60货主地址
ShipCityvarchar15所在城市
ShipRegionvarchar15区域
ShipPostalCodevarchar10邮政编码
ShipCountryvarchar15所在国家

表样例

请在这里给出上述表结构对应的表样例。例如

orders表:

OrderIDCustomerIDShipCountry
10248VINETFrance
10249TOMSPGermany
10250HANARBrazil
10251VICTEFrance
10252SUPRDBelgium
10253HANARBrazil
10254CHOPSSwitzerland
10255RICSUSwitzerland
10256WELLIBrazil
10257HILAAVenezuela

输出样例:

OrderIDCustomerID
10248VINET
10249TOMSP
10250HANAR
10251VICTE
10253HANAR
10256WELLI

 代码如下:

SELECT
    OrderID , CustomerID
FROM 
    orders
WHERE
    ShipCountry = 'Germany' OR ShipCountry = 'Brazil' OR ShipCountry = 'France'

10-102 A1-3查询顾客表中所有不重复的城市

查询出顾客表(customers)中所有不重复的所在城市(City)

提示:请使用SELECT语句作答。

表结构:

列名数据类型长度主码说明
CustomerIDvarchar5顾客编号
CompanyNamevarchar40公司名称
ContactNamevarchar30联系姓名
ContactTitlevarchar30联系头衔
Addressvarchar60地址
Cityvarchar15城市
Regionvarchar15区域
PostalCodevarchar10邮政编码
Countryvarchar15国家
Phonevarchar24电话
Faxvarchar24传真

表样例

customers表:

CustomerIDCompanyNameCity
ANATRAna Trujillo Emparedados y heladosMxico D.F.
ANTONAntonio Moreno TaqueraMxico D.F.
AROUTAround the HornLondon
BERGSBerglunds snabbkpLule
BLAUSBlauer See DelikatessenMannheim
BLONPBlondesddsl pre et filsStrasbourg
BOLIDBlido Comidas preparadasMadrid
BONAPBon app'Marseille
BOTTMBottom-Dollar MarketsTsawassen

输出样例:

City
Berlin
Mxico D.F.
London
Lule
Mannheim
Strasbourg
Madrid
Marseille
Tsawassen

代码如下:

SELECT DISTINCT 
    City
FROM 
    customers

 10-103 A1-4在产品表中找出库存数量大于50的产品的信息

产品表(products)中找出库存数量(UnitsInStock)大于50产品编号(ProductID),产品名称(ProductName)
提示:请使用SELECT语句作答。

表结构:

列名数据类型长度主码说明
ProductIDint11产品编号
ProductNamevarchar40产品名称
SupplierIDint11供应商编号
CategoryIDint11种类编号
QuantityPerUnitvarchar20数量
UnitPricedecimal10,4单价
UnitsInStocksmallint2库存数量
UnitsOnOrdersmallint2订购数量
ReorderLevelsmallint2再次订购量
Discontinuedbit1中止

表样例

products表:

ProductIDProductNameUnitsInStock
1Chai39
2Chang17
3Aniseed Syrup13
4Chef Anton's Cajun Seasoning53
5Chef Anton's Gumbo Mix0
6Grandma's Boysenberry Spread120
7Uncle Bob's Organic Dried Pears15
8Northwoods Cranberry Sauce6
9Mishi Kobe Niku29
10Ikura31

输出样例:

请在这里给出输出样例。例如:

ProductIDProductName
4Chef Anton's Cajun Seasoning
6Grandma's Boysenberry Spread

代码如下:

SELECT 
    ProductID,ProductName
FROM 
    products
WHERE 
    UnitsInStock > 50;

 10-104 3-1-(d)查询比电影《M1》时间更长的电影

本题目要求编写SQL语句,
查询比电影M1时间更长的电影。

提示:请使用SELECT语句作答。

表结构:

CREATE TABLE Movie              --电影表
(  title CHAR(20) NOT NULL,     --电影名称
  year INT NOT NULL,            --拍摄年份
  length INT ,                  --长度
  inColor BIT DEFAULT 1,        --是否彩色
  studioName CHAR(20),          --所属电影公司
  producerCertID CHAR(10),      --制片人
  PRIMARY KEY (title,year)  
);

表样例

Movie表:

titleyearlengthinColorstudioNameproducerCertID
M120181001st10001
M220181001st10002
M320191201st20003
M42017901st20004
M520141101st20004
M62015951st20004

输出样例:

titleyear
M32019
M52014

代码如下:

 

SELECT
     title,year 
FROM 
    Movie 
WHERE 
    length > 100;

10-105 3-1-(e)查询比a1更富有的行政长官

本题目要求编写SQL语句,
查询比a1更富有的行政长官。

提示:请使用SELECT语句作答。

表结构:

CREATE TABLE MovieExec        
(  name CHAR(20),              --姓名  
  address VARCHAR(255),        --地址
  certID  CHAR(10) NOT NULL,   --身份证号
  netWorth INT,                --资产
  PRIMARY KEY(certID)
);
CREATE TABLE Studio           
(  name CHAR(20) NOT NULL ,   --公司名称
  address VARCHAR(255),       --地址  
  presCertID CHAR(10) ,       --行政总裁
  PRIMARY KEY(name),
  FOREIGN KEY(presCertID) REFERENCES MovieExec(certID)
);

表样例

MovieExec

nameaddresscertIDnetWorth
a1b10001111
a2b20002222
a3b30003333
a4b40004444
S4sa40005444

Studio

nameaddresspresCertID
st1sta10001
st2sta20003

输出样例:

name
a3

代码如下:

SELECT 
    name
FROM 
    MovieExec
WHERE 
    networth > ANY(
    SELECT networth 
    FROM MovieExec
    WHERE name='a1'
    )
AND 
    certID IN (
    SELECT presCertID
    FROM Studio
)

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小羊 : )

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值