0

我正在尝试用 SQL 生成报告,但一直遇到错误。

这是我的代码:

CREATE VIEW REPORT1 AS
SELECT c.ChannelNumber, s.SupplierName, p.PackageID, pro.ProgramName, r.RatingCode, sch.ShowTime
FROM Program pro
LEFT OUTTER JOIN Rating r
ON pro.RatingID = r.ratingID 
LEFT OUTTER JOIN Supplier s
ON pro.SupplierID = s.SupplierID
LEFT OUTTER JOIN Schedule sch
ON pro.ProgramID = sch.ProgramID
LEFT OUTTER JOIN Channel c
ON shc.ChannelID = c.ChannelID
LEFT OUTER JOIN ChannelPackage cp
ON ch.ChannelID = cp.ChannelID
LEFT OUTER JOIN  Package p
ON cp.PackageID = p.PackageID
WHERE  sch.ShowTime  = '14-OCT-13'
ORDER BY ch.ChannelNumber, p.ProgramName;

我一直在第 4 行收到一个错误,指出“ORA-00905:缺少关键字”我已经尝试了一个多小时,但无法弄清楚我做错了什么。有任何想法吗?

*更新编辑*

多谢你们!

这是我更新的代码:

    CREATE VIEW REPORT1 AS
SELECT c.ChannelNumber, s.SupplierName, p.PackageID, pro.ProgramName, r.RatingCode, sch.ShowTime
FROM Program pro
    LEFT JOIN Rating r  ON pro.RatingID = r.ratingID 
    LEFT JOIN Supplier s ON pro.SupplierID = s.SupplierID
    LEFT JOIN Schedule sch ON pro.ProgramID = sch.ProgramID
    LEFT JOIN Channel c ON sch.ChannelID = c.ChannelID
    LEFT JOIN ChannelPackage cp ON c.ChannelID = cp.ChannelID
    LEFT JOIN  Packages p ON cp.PackageID = p.PackageID
WHERE  sch.ShowTime  =  &ShowTime
ORDER BY c.ChannelNumber, pro.ProgramName;

该报告现在可以工作,但仍然无法正确显示频道编号,但我认为这是由于我在开始时配置表格的方式有误。

4

2 回答 2

2

您在前 4 个连接中拼写错误“外部”。由于您的第一次加入在第 4 行,因此数据库列出了编译错误

于 2013-10-21T03:27:12.660 回答
0

外部是不必要的。只需使用左连接。也是它的“外部”而不是“外部”。

于 2013-10-21T03:45:00.990 回答