SQL79 别名
描述
别名的常见用法是在检索出的结果中重命名表的列字段(为了符合特定的报表要求或客户需求)。有表Vendors代表供应商信息,vend_id供应商id、vend_name供应商名称、vend_address供应商地址、vend_city供应商城市。
vend_id vend_name vend_address vend_city
a001 tencent cloud address1 shenzhen
a002 huawei cloud address2 dongguan
a003 aliyun cloud address3 hangzhou
a003 netease cloud address4 guangzhou【问题】编写 SQL 语句,从 Vendors 表中检索vend_id、vend_name、vend_address 和 vend_city,将 vend_name重命名为 vname,将 vend_city 重命名为 vcity,将 vend_address重命名为 vaddress,按供应商名称对结果进行升序排序。
【示例结果】返回vend_id 供应商id、vname 供应商名称、vaddress供应商地址、vcity供应商城市。
vend_id vname vaddress vcity
a003 aliyun cloud address3 hangzhou
a002 huawei cloud address2 dongguan
a003 netease cloud address4 guangzhou
a001 tencent cloud address1 shenzhen
示例1
输入:
DROP TABLE IF EXISTS `Vendors`;
CREATE TABLE IF NOT EXISTS `Vendors` (`vend_id` VARCHAR(255) NOT NULL COMMENT '供应商id',`vend_name` VARCHAR(255) NOT NULL COMMENT '供应商名称',`vend_address` VARCHAR(255) NOT NULL COMMENT '供应商地址',`vend_city` VARCHAR(255) NOT NULL COMMENT '供应商城市'
);
INSERT INTO `Vendors` VALUES ('a001','tencent cloud','address1','shenzhen'),
('a002','huawei cloud','address2','dongguan'),
('a003','aliyun cloud','address3','alibaba');
复制
输出:
vend_id|vname|vaddress|vcity
a003|aliyun cloud|address3|alibaba
a002|huawei cloud|address2|dongguan
a001|tencent cloud|address1|shenzhen
答案:
SELECT vend_id,vend_name as "vname",vend_address as "vaddress",vend_city as "vcity"
FROM Vendors
ORDER BY vend_name
SQL80 打折
描述
我们的示例商店正在进行打折促销,所有产品均降价 10%。Products表包含prod_id产品id、prod_price产品价格
【问题】编写 SQL语句,从 Products 表中返回 prod_id、prod_price 和 sale_price。sale_price 是一个包含促销价格的计算字段。提示:可以乘以 0.9,得到原价的 90%(即 10%的折扣)
【示例结果】
返回产品id prod_id、产品价格prod_price、销售价格 sale_price
prod_id prod_price sale_price
a0011 9.49 8.541
a0019 600 540
b0019 1000 900
【示例解析】sale_price的价格是prod_price的90%
示例1
输入:
DROP TABLE IF EXISTS `Products`;
CREATE TABLE IF NOT EXISTS `Products` (
`prod_id` VARCHAR(255) NOT NULL COMMENT '产品 ID',
`prod_price` DOUBLE NOT NULL COMMENT '产品价格'
);
INSERT INTO `Products` VALUES ('a0011',9.49),
('a0019',600),
('b0019',1000);
复制
输出:
prod_id|prod_price|sale_price
a0011|9.490|8.541
a0019|600.000|540.000
b0019|1000.000|900.000
答案:
SELECT prod_id,prod_price,(prod_price * 0.9) as "sale_price"
FROM Products