0

我正在尝试在 Oracle 中运行以下命令

SELECT artistic_name 
FROM Artist 
INNER JOIN Groups ON artistic_name = Groups.group_name, Groups.group_name = ‘Frankensense’, OR Groups.group_name = ‘Jameson’;

错误是:SP2-0734: unknown command beginning "1) SELECT ..." - rest of line ignored.

我看不出这到底是什么问题。

有人有想法么?

谢谢。

4

4 回答 4

1

首先,发布确切的错误(ORA-xxxxx 错误代码和错误消息的全文)总是有帮助的。

我怀疑你想要

SELECT artistic_name 
  FROM Artist 
       INNER JOIN Groups 
       ON artistic_name = Groups.group_name
 WHERE Groups.group_name IN ('Frankensense', 'Jameson');

您也可以将group_name谓词放在ON子句中

SELECT artistic_name 
  FROM Artist 
       INNER JOIN Groups 
       ON(     artistic_name = Groups.group_name
           AND Groups.group_name IN ('Frankensense', 'Jameson'));
于 2012-12-03T21:25:17.930 回答
0

告诉我们错误。同时,删除多余的逗号。

SELECT artistic_name 
FROM Artist
INNER JOIN Groups
  ON artistic_name = Groups.group_name
    AND Groups.group_name = 'Frankensense'
    OR Groups.group_name = 'Jameson';

您可能需要添加括号,具体取决于您希望 at "ON" 子句如何工作。

于 2012-12-03T21:22:48.823 回答
0

这应该工作,

SELECT artistic_name 
FROM Artist 
INNER JOIN Groups ON artistic_name = Groups.group_name 
  AND (Groups.group_name = 'Frankensense' OR Groups.group_name = 'Jameson')

JOINWHERE条件不需要逗号

于 2012-12-03T21:23:42.797 回答
0

看起来你打算有一个 WHERE 子句,并删除逗号:

 SELECT artistic_name 
 FROM Artist 
   INNER JOIN Groups ON artistic_name = Groups.group_name 
 WHERE Groups.group_name = 'Frankensense' 
    OR Groups.group_name = 'Jameson';
于 2012-12-03T21:26:52.543 回答