Oracle SQL Developer版本18.2.0.183,内部版本183.1748(只读访问数据库)
我正在寻找一种方法,使特定的数值显示在查询结果中,然后将该值乘以另一个列值的结果。这是到目前为止我得到的:
SELECT
DBSTAGE.AOWOD.TOQUANTITY "Quantity",
DBSTAGE.OAWOD.TOQUANTITY ?????? "Price",
DBSTAGE.OAWOD.TOQUANTITY * ?????? "Amount",
DBSTAGE.OAWOM.ID "ID Number"
FROM
DBSTAGE.OAWOD,
DBSTAGE.OAWOM
WHERE
DBSTAGE.AOWOM.WONUM = DBSTAGE.OAWOD.WONUM
AND DBSTAGE.AOWOM.STID = DBSTAGE.AOWOD.STID
此查询输出将有4列(数量,价格,数量和ID号)。 “数量”数据格式为NUMBER(5),始终为1到9之间的数值。“价格”数据格式为NUMBER(5),始终为数值,这是我需要帮助的地方。我需要它始终将价格以相同的数字格式200放在我的查询中。您可能会猜到我下一个寻求帮助的内容是什么。 “金额”数据格式为NUMBER(5),并且始终是“数量”乘以“价格”的数值。
DBSTAGE是模式 桌子是AOWOD&AOWOM TOQUANTITY&ID是表格中的列 数量,价格和金额是查询中的新列
这可能吗?
在此先感谢您的帮助。
这就是最终结果应该是什么样子 enter image description here
答案 0 :(得分:0)
一些数据和预期结果将对您有所帮助。但是,我相信您的问题的答案就是这样。请注意,您使用了3次“数量”列,这对我来说似乎很奇怪。我认为您的意思是将其他列名称放在此处,但我不确定。另外,我为价格列创建了一个名称,您应该使用正确的名称替换该名称。用硬编码代替“ 200”对我来说似乎是一个可怕的主意。
SELECT dbstage.aowod.toquantity
"Quantity",
200
"Price",
round(dbstage.oawod.toquantity * 200, -1)
"Amount",
dbstage.oawom.id
"ID Number"
FROM dbstage.oawod,
dbstage.oawom
WHERE dbstage.aowom.wonum = dbstage.oawod.wonum
AND dbstage.aowom.stid = dbstage.aowod.stid