未知命令开始SELECT ...错误?

时间:2012-12-03 21:21:24

标签: sql database oracle relational-database

我试图在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 个答案:

答案 0 :(得分: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'));

答案 1 :(得分: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”子句的工作方式。

答案 2 :(得分: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条件

不需要逗号

答案 3 :(得分: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';