Sql 嵌套查询问题,无效标识符错误

Sql 嵌套查询问题,无效标识符错误,sql,oracle10g,inner-join,Sql,Oracle10g,Inner Join,我正在Oracle 10 XE中运行以下查询,并获得[Err]ORA-00904:“Q”:无效标识符 SELECT questions.sb_title Q,questions.sb_baab_id,questions.sb_fasal_id,QUESTIONS.SB_CONTENT answer,IST.SB_PREFERENCE PREF FROM USER_QUESTIONS questions INNER JOIN USER ON QUESTIONS.SB_USER_ID = USER.

我正在Oracle 10 XE中运行以下查询,并获得[Err]ORA-00904:“Q”:无效标识符

SELECT questions.sb_title Q,questions.sb_baab_id,questions.sb_fasal_id,QUESTIONS.SB_CONTENT answer,IST.SB_PREFERENCE PREF
FROM USER_QUESTIONS questions
INNER JOIN USER
ON QUESTIONS.SB_USER_ID = USER.SB_ID
INNER JOIN IST 
ON IST.SB_ID = USER.SB_IST_ID
AND(Q  LIKE '%where is%') 
AND USER.SB_IST_ID = 
(
    Select issued.SB_IST_ID
    FROM USER_REGISTER register_number
    INNER JOIN USER_ISSUED issued
    ON register_number.SB_REGISTER_NUMBER = ISSUED.SB_REGISTER_NUMBER
    AND REGISTER_NUMBER.SB_REGISTER_NUMBER IN(1240)
)

您不能在连接条件中引用别名-请写出实际的列名:sb_title。

我认为您不能像那样使用别名“Q”。如果在select子句中使用别名,则不要认为可以在ON子句中使用该别名。尝试使用完整的列名(sb_title)。

如果我错了,请纠正我的错误,但是您不应该使用
作为
声明别名吗?在Oracle中,别名不必使用AS关键字-在列之后提供别名就可以了。