本题目要求编写SQL语句, 利用sh_goods表创建视图view_goods,包含原售价大于1000元的商品在打折前后的价格信息。视图中包含四列,分别为商品id,商品名称,商品原价格(old_price)和商品打五折后的价格(new_price)。
时间: 2024-03-01 16:50:00 浏览: 29
可以使用以下 SQL 语句创建所需的视图:
```sql
CREATE VIEW view_goods AS
SELECT id, name, old_price, old_price * 0.5 AS new_price
FROM sh_goods
WHERE old_price > 1000;
```
这个语句首先从 sh_goods 表中选择 id、name 和 old_price 列,并使用 WHERE 子句筛选出原价大于 1000 的商品。然后,使用 AS 子句为新的视图添加一个新的列 new_price,该列是 old_price 的一半,即打五折后的价格。最后,使用 CREATE VIEW 语句将其保存为名为 view_goods 的视图。
相关问题
本题目要求编写SQL语句, 结合sh_goods表和sh_goods_attr_value表创建视图view_goods_2,包含拥有属性值的数量大于1个的商品对应的商品id和name。
好的,您的问题是如何编写SQL语句,结合sh_goods表和sh_goods_attr_value表创建视图view_goods_2,包含拥有属性值的数量大于1个的商品对应的商品id和name。下面是SQL语句:
CREATE VIEW view_goods_2 AS
SELECT sh_goods.id, sh_goods.name
FROM sh_goods
INNER JOIN sh_goods_attr_value
ON sh_goods.id = sh_goods_attr_value.goods_id
GROUP BY sh_goods.id, sh_goods.name
HAVING COUNT(sh_goods_attr_value.attr_value_id) > 1;
该视图将返回拥有属性值数量大于1个的商品对应的商品id和name。请注意,此视图基于两个表之间的连接和聚合函数。因此,确保这两个表中的值具有正确的格式和数据类型,并且在执行此SQL语句之前,请备份您的数据。
本题目要求编写SQL语句, 利用sh_goods表创建视图view_goods,包含商品打折前后的价格信息。视图中包含四列,分别为商品id,商品名称,商品原价格(old_price)和商品打五折后的价格(new_price)
可以使用以下SQL语句创建视图view_goods:
```
CREATE VIEW view_goods AS
SELECT goods_id, goods_name, old_price, old_price*0.5 AS new_price
FROM sh_goods;
```
该语句会在当前数据库中创建一个名为view_goods的视图,该视图会从sh_goods表中选择商品id、商品名称、商品原价格和商品打五折后的价格,并将其作为新的视图列。在视图中,new_price列的值是old_price列的50%。换句话说,它是商品的原始价格的一半。