代码 :
SELECT * FROM Grade
WHERE grade = ‘MG’ ‘1-9’
SELECT * StaffNo, Name, DOB, ReportsTo,
FROM Staff
ORDER BY DOB DESC;
我不断得到
ORA-00911: 无效字符
这是代码的问题吗?
这就是问题所在,可能有两个原因:
WHERE grade = ‘MG’ ‘1-9’
您实际上是否在查询中包含了大引号?如果是这样,那可能就是 Oracle 抱怨无效字符的原因。
但是,目前还不清楚您要匹配的确切内容。你想要任何以 MG 开头,然后是 1 到 9 之间的字符吗?如果是这样,您可以使用:
WHERE grade BETWEEN 'MG1' AND 'MG9'
如果这不是您的意思,您需要更仔细地解释您正在尝试做的事情 - 并理解如果人类无法理解您的意图,SQL 解析器就更不可能......