57 Creating Views
- 有的时候获取的某些表格内容可能会多次使用。(比如获取client及其销售信息)
可以再进行排序或分类。(进一步使用) - 因此为了不用每一次使用相关的(可能会多次使用)的表格信息时非常tedious的重复coding。可以将这类语句保存为view。
CREATE VIEW sale_by_client AS
# 创建名为sale_by_client 的view
SELECT
c.client_id,
c.name,
SUM(invoice_total) AS total_sales
FROM clients c
LEFT JOIN invoices i
USING (client_id)
GROUP BY client_id, name
-
在左侧的SCHMAS 刷新后显示
-
view 的功能跟table类似,可以用FROM来调用它们。ps:感觉上就是某种形式上的table了。
(某种virtual 的table,由我们人为的设定的,但data还是保存在table中,而无法保存在view中) -
这样就不用每次使用都from scratch。
- exercise
CREATE VIEW balance_by_client AS
SELECT
c.client_id,
c.name,
SUM(invoice_total) - SUM(payment_total) AS balance
FROM clients c
LEFT JOIN invoices i
USING (client_id)
GROUP BY client_id, name
# 计算client及其balance,并创建view保存
网友评论