带两个表的SQL选择查询
问题描述:
我正在努力完成一项任务。我需要创建一个选择查询,其中: 对于每个特定的列出日期显示日期和收入其中收入是销售单位数量乘以单位价格(但只有当收入大于或等于10000时)。 有两个表格:产品 & 订单。 产品包含列:单元类型,价格。而为了包含列:UNITTYPE,日期,数带两个表的SQL选择查询
(销售台数),这是我的选择查询尝试:
SELECT
order.date,
product.price*order.number AS revenue
FROM product
INNER JOIN
order
ON product.unittype = order.unittype
WHERE product.price*order.number >= 10000;
我的结果都不是,甚至接近10k(介于39和1.3k之间),所以我想知道我是否输入了错误或者是否有更有效的输入方式?
答
如果这意味着要总数为一天(而不是个别行),你需要一个聚集和having
条款:
SELECT
order.date,
SUM(product.price*order.number) AS revenue
FROM product
INNER JOIN
order
ON product.unittype = order.unittype
GROUP BY order.date
HAVING SUM(product.price*order.number) >= 10000
您的查询似乎是正确的对我来说,这方言是你使用?甲骨文? – 2014-09-19 02:08:27
要排除故障,请展开您的select子句以显示价格和数字值。 – 2014-09-19 02:15:58
不确定为什么它不应该为内连接,但你可以尝试有两个选择像'select date,revenue from(select order.date as date,product.price * order.number as product from inner inner join order on product.unittype = order.unittype)where revenue> = 10000;' – eckes 2014-09-19 02:16:01