ORA 00918 sql中的内部联接

ORA 00918 sql中的内部联接,sql,oracle,syntax,inner-join,Sql,Oracle,Syntax,Inner Join,我有一个疑问: select carrier_id, order_id,aircraft_id,quantity from orderline innerjoin purchaseorder on orderline.order_id = purchaseorder.carrier_id; 我得到了一个模糊的错误,我知道我必须使用别名,但它不起作用,即: select carrier_id as cID, order_id as OID,aircraft_id,quantity from

我有一个疑问:

select carrier_id, order_id,aircraft_id,quantity 
from orderline 
innerjoin purchaseorder on orderline.order_id = purchaseorder.carrier_id;
我得到了一个模糊的错误,我知道我必须使用别名,但它不起作用,即:

select carrier_id as cID, order_id as OID,aircraft_id,quantity 
from orderline 
innerjoin purchaseorder on orderline.order_id as OID = purchaseorder.carrier_id as cID
它说的是无效的关系运算符


感谢大家的帮助:)

您的
内部连接需要一个空间。不
INNERJOIN

  select carrier_id, order_id,aircraft_id,quantity 
 from orderline 
 inner join purchaseorder on orderline.order_id = purchaseorder.carrier_id;

另外,正如另一位回答者所说,您的列可能定义不明确(每个表中的列名相同),因此您需要在列前面加上您的表名,即(
select orderline.orderid

问题是,在您进行
连接之后,您选择了一些列。其中一些列在两个表上可能具有相同的名称,您需要指定其中一个:

select P.carrier_id, O.order_id, O.aircraft_id, P.quantity --use the right prefix
from orderline AS O
inner join purchaseorder AS P
on O.order_id = P.carrier_id;

这是
innerjoin
not
innerjoin
当我这样尝试时,ORA-00933命令没有正确结束,as-O下的as-asterix