我有一个使用CREATE和INSERT语句填充的数据库。我现在正在尝试编写一个案例状态集,它将显示“客户”,其payment_due_date已经超过了今天的日期。下面是下面的代码
创建语句'Ord'(Order)
CREATE TABLE Ord(OrderID varchar2(9) PRIMARY KEY,
CustomerID varchar(9) REFERENCES Customer(CustomerID),
Expected_Delivery_Date date DEFAULT sysdate NOT NULL,
Actual_Delivery_Date date DEFAULT sysdate NOT NULL,
Payment_Due_Date date DEFAULT sysdate NOT NULL,
Order_Date date DEFAULT sysdate NOT NULL, Price Varchar(10),
Order_Placed varchar2(1) CONSTRAINT OrderPlaced
CHECK(Order_Placed IN('Y','N')) NOT NULL, Order_Confirmed varchar2(1)
CONSTRAINT Order_Confirmed CHECK(Order_Confirmed IN('Y','N'))
NOT NULL, Order_Completed varchar2(1) CONSTRAINT Order_Completed
CHECK(Order_Completed IN('Y','N')) NOT NULL) 插入语句
INSERT INTO Ord VALUES(401565981, 501623129,
'10-Dec-10', '11-Dec-10', '07-Dec-10', '03-Dec-10','£14.99', 'Y', 'Y', 'Y')CASE语句
SELECT OrderID, CustomerID, Payment_Due_Date CASE WHEN
Payment_Due_Date = '08-Dec-10' THEN 'Send Final Demand Letter'
ELSE 'Do not send letter'
END FROM Ord;当我试图运行上述case语句时,会收到以下错误
ORA- 00923 : FROM关键字找不到预期的00923。00000 -“从预期中找不到的关键字”*原因:
*行动:行处错误: 26栏: 50
有什么办法绕过这件事吗?
发布于 2010-12-09 14:14:36
我想你需要在Payment_Due_Date和CASE之间加上一个逗号。
https://stackoverflow.com/questions/4399124
复制相似问题