首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MySQL:视图语句:使用视图和聚合函数

问MySQL:视图语句:使用视图和聚合函数
EN

Stack Overflow用户
提问于 2016-04-11 18:16:37
回答 1查看 635关注 0票数 0

我试图在select语句中使用view语句,但同时我尝试在视图表中包含一个包含联接的聚合函数。

我不明白的是我是否需要重新加入其他的表。为什么在使用SalesData作为表时,这种方法不起作用?

我得到的错误是:

"SQL错误(1054):‘字段列表’中未知列'SalesData.unit_price‘

有了这一点,我相信错误实际上发生在这里:

总金额(SalesData.unit_price*SalesData.order_qty,2)为“支出总额”

代码语言:javascript
复制
CREATE VIEW SalesData AS 
    SELECT orders.customer_id, 
           SUM(ROUND(items.unit_price * order_details.order_qty,2)) as 'Total Spent'
    FROM order_details
    JOIN orders on orders.order_id = order_details.order_id
    JOIN items on items.item_id = order_details.item_id
    GROUP BY orders.customer_id;

SELECT CONCAT(customers.customer_first_name, ' ', customers.customer_last_name) as 'Customer',
           SUM(ROUND(SalesData.unit_price * SalesData.order_qty,2)) as 'Total Spent'
    FROM customers
    JOIN SalesData on SalesData.customer_id = customers.customer_id
    GROUP BY customer_id;
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-04-11 18:39:23

嗯,unit_price似乎并不是SalesData的一个专栏,但是看看您的问题,您所需要的似乎是:

代码语言:javascript
复制
SELECT CONCAT(customers.customer_first_name, ' ', customers.customer_last_name) as 'Customer',
       SalesData.[Total Spent]
FROM customers
JOIN SalesData on SalesData.customer_id = customers.customer_id;
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36556208

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档