Sql 创建摘要视图
我需要创建显示收入的视图,如下所示。(游乐园资料库) 我有三张桌子:Sql 创建摘要视图,sql,database,oracle,view,oracle-sqldeveloper,Sql,Database,Oracle,View,Oracle Sqldeveloper,我需要创建显示收入的视图,如下所示。(游乐园资料库) 我有三张桌子: x_交易(交易id、骑乘id、金额等) x_游乐设施(游乐设施id、游乐设施类别id等) x_游乐设施类别(游乐设施类别id、名称等) 我需要创建一个视图,显示每个游乐设施类别的总收入 类别收入 ------------------- 运动34000 水27000 肾上腺素24300 成人空白 顺便说一句,很抱歉我的英语不好。以下内容应能满足您的需求: CREATE VIEW RIDE_CATEGORY_REVENUE_VI
x_交易(交易id、骑乘id、金额等)
x_游乐设施(游乐设施id、游乐设施类别id等)
x_游乐设施类别(游乐设施类别id、名称等)
我需要创建一个视图,显示每个游乐设施类别的总收入 类别收入
-------------------
运动34000
水27000
肾上腺素24300
成人空白
顺便说一句,很抱歉我的英语不好。以下内容应能满足您的需求:
CREATE VIEW RIDE_CATEGORY_REVENUE_VIEW AS
SELECT c.NAME AS CATEGORY, SUM(t.AMOUNT) AS REVENUE
FROM X_RIDES_CATEGORY c
INNER JOIN X_RIDES r
ON r.RIDES_CATEGORY_ID = c.RIDES_CATEGORY_ID
INNER JOIN X_TRANSACTION t
ON t.RIDES_ID = r.RIDES_ID
我怀疑X_事务的第二个字段的名称是RIDE_ID还是RIDES_ID。后者与X_RIDES上的相应字段相匹配,但我使用了第一个名称,因为这是您在X_RIDES表摘要中显示的名称。我认为您可以使用
外部联接和分组方式
,如下所示:
Create view your_view_name as
Select cat.name as category, sum(amount) as revenue
From x_rides_category cat
Left join x_rides r on cat.rides_category_id = r.rides_category_id
Left join x_transaction t on r.rides_id = t.rides_id
Group by cat.name
干杯 哦,是的,第二个字段应该是骑乘ID。对不起,我弄错了。