所有原料都是在11月份购买的。显示每个项目的配料id、名称、订购日期、数量和单位(在一列中)、单价和总金额。按降序日期排序结果集。提示:总金额等于数量乘以单价。
SELECT ingredient_id, ingredient_name, date_ordered, "Quantity & Unit" AS Quantity,
unit_price * quantity AS "Total Amount"
FROM ingredient
WHERE MONTH (date_ordered) = 11
ORDER BY 'date_ordered' DESC;它总是说月份标识符无效。
发布于 2019-12-02 10:29:51
您的代码中存在多个问题:
MONTH不是oracle'date_ordered'中的有效函数无效,因为列名不允许使用单引号。您的代码应如下所示:
选择ingredient_id,ingredient_name,date_ordered,“Quantity & Unit”作为数量,unit_price * quantity作为"Total Amount“from ingredient extract (MONTH FROM date_ordered) = 11 --使用的提取函数ORDER BY date_ordered DESC;--删除单引号
还要注意,此查询将给出11月份的所有记录,而不考虑年份。
干杯!!
发布于 2019-12-02 09:20:38
使用extract()函数
SELECT ingredient_id, ingredient_name, date_ordered, "Quantity & Unit" AS Quantity, unit_price * quantity AS "Total Amount" FROM ingredient WHERE extract(month from date_ordered) = 11 ORDER BY 'date_ordered' DESC;另一种选择也是使用。
To_Char(date_ordered,'MM') https://stackoverflow.com/questions/59131510
复制相似问题