【发布时间】:2016-11-02 03:09:17
【问题描述】:
我使用这些查询从表中创建了一个视图
CREATE VIEW AVAIL_TOOLS AS
SELECT T.TOOL_NAME AS "Name", R.RETAILER_NAME AS "Retailer", T.RETAILER_NUM AS "Number", I.TI_STATUS AS "Status",
(SELECT
CASE
WHEN DETAIL_RETURNDATE IS NULL THEN TO_CHAR(DETAIL_DUEDATE,'Day, Month, DD, YYYY')
ELSE 'Now' END FROM DETAILRENTAL) AS "Expected Avaliablity"
FROM TOOL T
INNER JOIN RETAILER R
ON T.RETAILER_NUM = R.RETAILER_NUM
INNER JOIN TOOLINSTANCE I
ON T.TOOL_NUM = I.TOOL_NUM
WHERE (I.TI_STATUS = 'Rented') OR (I.TI_STATUS = 'Available')
ORDER BY T.TOOL_NAME;
现在当我尝试运行 SELECT * FROM AVAIL_TOOLS 我收到错误 ORA-01427:单行子查询返回多于一行。 我在查询中运行的情况显然似乎是问题所在。现在无论如何我可以改变查询。我正在尝试创建一个视图,如果返回日期为空,它将在返回时可用,否则它应该是现在。
我不知道应该如何改变才能获得所需的结果。
【问题讨论】:
标签: oracle