我在尝试使用JOIN方法解决此问题时遇到了一些问题。也许我没有使用正确类型的JOIN?我得到的查询执行罚款时,我用传统的方法,语法,其中如下所示:Oracle ORA-0095:缺少关键字
SELECT cr.criminal_id, cr.last, cr.first, c.classification, c.date_charged, cc.crime_code,
cc.fine_amount
FROM criminals cr, crimes c, crime_charges cc
WHERE classification = 'O'
ORDER BY cr.criminal_id, c.date_charged;
但是当我尝试使用JOIN方法我得到ORA-0095说,一个错误:缺少关键字。我认为这是因为我没有足够具体的JOIN关键字?但我不知道我应该把它放在什么前面(如果有的话)。这里是一个的给我的错误代码:
SELECT cr.criminal_id, cr.last, cr.first, c.classification, c.date_charged, cc.crime_code
cc.fine_amount
FROM criminals cr JOIN crimes c (using criminal_id)
JOIN crime_charges cc (using crime_id)
WHERE classification = 'O'
ORDER BY cr.criminal_id, c.date_charged;
的问题说,我应该列出我已经在SELECT语句已选择的列,然后只包括归类为“其他”罪行(由'O'指定)。然后,我只是应该按犯罪编号和日期组织名单。相当基本的东西(这就是为什么它让我疯狂,我无法让它工作!)。
你的“传统方法”不加入任何东西;它只是从不同的表中选择不相关的列。如果你使用的是Oracle,那么MySQL和SQL Server标签是不适用的 - 它们是完全不同的产品,而这三者是**不等同的。使用实际适用于您的问题的标签。如果您不确定,请在使用前阅读标签说明。在本网站搜索'[oracle] JOIN'(包括括号) - 有很多现有的问题提供了正确的语法示例。这里...让我为你做。 – 2014-11-06 01:42:31