我有3张桌子。
一个是PRODUCT
表,它有unitSalePrice
,其他表格为ORDERPRODUCT
,它有一个列productQuantity
(来自特定产品的订单数量)以及{ {1}}添加客户订单的详细信息。
我写了这样一个ORDERS
语句:
SELECT
但是这个SELECT
ORDERPRICE
FROM
PRODUCT, ORDERPRODUCT, ORDERS
WHERE
ORDERPRODUCT.PRODUCT_ID = PRODUCT.PRODUCT_ID
AND ORDERS.ORDER_ID = ORDERPRODUCT.ORDER_ID
AND ORDERPRICE AS (ORDERPRODUCT.PRODUCTQTY * PRODUCT.UNITSALEPRICE) ;
列不在这3个表中,它是虚拟列。
当我运行此查询时,它会给出错误列不存在。
我该怎么做?
答案 0 :(得分:1)
您应该学会使用明确的join
语法:
SELECT (op.PRODUCTQTY * p.UNITSALEPRICE) AS ORDERPRICE
FROM PRODUCT p JOIN
ORDERPRODUCT op
ON op.PRODUCT_ID = p.PRODUCT_ID JOIN
ORDERS o
ON o.ORDER_ID = op.ORDER_ID;