【发布时间】:2016-08-16 06:51:00
【问题描述】:
我正在尝试从一个查询中获取 ID 和 USER 名称,但同时我正在查看我的 WHERE 子句,如果 ID 存在于其他表中。我得到了错误:
ORA-01427: single-row subquery returns more than one row
这是我的查询的样子:
SELECT s.ID, s.LASTFIRST
From USERS s
Left Outer Join CALENDAR c
On s.ID = c.USERID
Where c.SUPERVISOR = '103'
And TO_CHAR(c.DATEENROLLED,'fmmm/fmdd/yyyy') >= '4/22/2016'
And TO_CHAR(c.DATELEFT,'fmmm/fmdd/yyyy') <= '4/22/2016'
And s.ID != (SELECT USER_ID
From RESERVATIONS
Where EVENT_ID = '56')
where 子句中的查询返回两个 ID:158 和 159,因此这两个不应在我正在查找 s.ID 和 s.LASTFIRST 的查询中返回。什么可能导致此错误?
【问题讨论】: