我正在尝试在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.
我看不出这到底是什么问题。
有人有什么想法吗?
谢谢。
首先,发布确切的错误(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'));
这应该有效,
SELECT artistic_name
FROM Artist
INNER JOIN Groups ON artistic_name = Groups.group_name
AND (Groups.group_name = 'Frankensense' OR Groups.group_name = 'Jameson')
JOIN
或WHERE
条件不需要逗号
看起来你的意思是有一个 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';
告诉我们错误。同时,删除多余的逗号。
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" 子句的工作方式。