Sql 标识符错误的问题

Sql 标识符错误的问题,sql,oracle,Sql,Oracle,我需要列出2013年1月26日当天或之前所有订单的订单ID、订单日期、客户ID、客户名字、客户姓氏和客户电话号码。按订单日期排序,然后按客户ID排序,两者均按升序排序。将日期格式化为“mm dd yyyy”,并使用以下列标题:OrderID、OrderDate、CustID、CustFirstName、CustLastName、CustPhone 但我收到一个错误,说“ORD.”CUST_ID:“无效标识符” 这是我的密码 SELECT ORD.Order_ID as OrderID, to_

我需要列出2013年1月26日当天或之前所有订单的订单ID、订单日期、客户ID、客户名字、客户姓氏和客户电话号码。按订单日期排序,然后按客户ID排序,两者均按升序排序。将日期格式化为“mm dd yyyy”,并使用以下列标题:OrderID、OrderDate、CustID、CustFirstName、CustLastName、CustPhone

但我收到一个错误,说“ORD.”CUST_ID:“无效标识符”

这是我的密码

 SELECT ORD.Order_ID as OrderID, to_char(Order_Date,'mm-dd-yyyy') as OrderDate, C.Cust_ID as 
 CustID, Cust_FName as CustFirstName, Cust_LName as CustLastName, Cust_Phone as CustPhone
 FROM ORDER_arb ORD, CUSTOMER_arb C
 INNER JOIN ORDER_arb ON C.Cust_ID = ORD.Cust_ID
 WHERE Order_Date <= '26-JAN-13'
 ORDER BY Order_Date, Cust_ID;
选择Order.Order\u ID作为OrderID,选择char(Order\u Date,'mm-dd-yyyy')作为OrderDate,选择C.Cust\u ID作为OrderID
CustID,Cust_FName作为custflastname,Cust_LName作为CustLastName,Cust_Phone作为CustPhone
来自订单,客户
C.Cust\u ID=ORD.Cust\u ID上的内部联接顺序

在Order\u Date中,您混合了隐式和显式的
join
语法。我认为问题在于
Order\u ARB
表在
FROM
子句中出现了两次。请尝试以下方法:

SELECT ORD.Order_ID as OrderID, to_char(ORD.Order_Date, 'mm-dd-yyyy') as OrderDate,
       C.Cust_ID as CustID, C.Cust_FName as CustFirstName, C.Cust_LName as CustLastName,
       C.Cust_Phone as CustPhone
FROM CUSTOMER_arb C INNER JOIN
     ORDER_arb ORD
     ON C.Cust_ID = ORD.Cust_ID
WHERE ORD.Order_Date <= '26-JAN-13'
ORDER BY ORD.Order_Date, C.Cust_ID;
选择Order.Order\u ID作为OrderID,选择字符(Order.Order\u Date,'mm dd yyyy')作为OrderDate,
C.Cust_ID作为CustID,C.Cust_FName作为custflastname,C.Cust_LName作为CustLastName,
C.客户电话作为客户电话
来自客户的arb C内部连接
订单
在C.Cust\u ID=ORD.Cust\u ID上

其中Order.Order\u Date查询中的问题似乎就在这里

 FROM ORDER_arb ORD, CUSTOMER_arb C   INNER JOIN 
   ORDER_arb    -- no alias here 
      ON C.Cust_ID = ORD.Cust_ID ---   here you have given ORD as alias 
请为ORDER\U arb表指定不同的别名,然后重试

这可能对你有帮助

SELECT ORD.Order_ID as OrderID, to_char(Order_Date,'mm-dd-yyyy') as OrderDate, C.Cust_ID as 
CustID, Cust_FName as CustFirstName, Cust_LName as CustLastName, Cust_Phone as      CustPhone
FROM ORDER_arb ORD, CUSTOMER_arb C
INNER JOIN 
ORDER_arb  OR_AB ON C.Cust_ID = OR_AB.Cust_ID
 WHERE Order_Date <= '26-JAN-13'
  ORDER BY Order_Date, Cust_ID;
选择Order.Order\u ID作为OrderID,选择char(Order\u Date,'mm-dd-yyyy')作为OrderDate,选择C.Cust\u ID作为OrderID
CustID,Cust_FName作为custflastname,Cust_LName作为CustLastName,Cust_Phone作为CustPhone
来自订单,客户
内连接
C.Cust\U ID=或C.Cust\U ID上的订单

Order_Date Oracle…我很抱歉将MySQL作为一个标签。好主意-但我仍然在Cust_ID下收到一个“定义不清的列”错误