【发布时间】:2014-04-01 01:09:04
【问题描述】:
我需要将 3 个表连接在一起,并从中获取日期、价格和客户 ID。这是描述:
首先,您需要确定从 2012 年 1 月 1 日至今购买“自行车配件”部门产品的任何人的客户 ID。为此,您需要将订单加入到产品的订单行中。
然后在您的父查询中,您将订单加入订单行并过滤子查询结果中的客户 ID。要计算终身订单收入,您需要对价格 * 数量的结果进行聚合函数。
所以我有一个带有客户 ID 的客户表,一个带有订单号、价格和数量的订单表,一个带有客户 ID、订单号和订单日期的订单表,以及一个带有部门的产品表(需要获取 '已检索自行车配件)。我已经写了这个,根据我的移动,我会收到从“无效标识符”到“缺少表达式”的错误。
select bc_orders.order_number, bc_orderlines.price, bc_orderlines.quantity, bc_orderlines.quantity*bc_orderlines.price AS "Total Revenue"
from (select bc_orders.*, bc_orderlines.*, bc_products.*
from bc_customers
join bc_orders
on bc_orders.order_number = bc_orderlines.order_number
join bc_products
on bc_products.sku = bc_orderlines.sku
where bc_orders.order_date >= '01-JAN-2012')
inner join bc_orderlines
on bc_orders.order_number = bc_orderlines.order_number
我回来了:
命令行错误:5 列:31
错误报告:
SQL 错误:ORA-00904:“BC_ORDERLINES”。“ORDER_NUMBER”:标识符无效
救命!
【问题讨论】:
标签: sql oracle join multiple-select