基本的SQL查询

时间:2012-04-20 18:48:07

标签: sql oracle

我刚刚开始一个SQL类,我遇到了一个必须解决的问题。 问题是

使用IN运算符列出项目类AP或SG中每个部件的部件号和部件描述。

我的答案是

SELECT PART_NUM, DESCRIPTION
FROM PART
WHERE CLASS IN (AP,  SG);

如果我尝试运行它,则表明SG是无效的标识符。但是,如果我查看表,那么有些类= ap和sg。有没有人对我做错了什么有任何帮助?谢谢你的时间

4 个答案:

答案 0 :(得分:3)

如果class是varchar2 o varchar类型的属性,你应该像这样运行sql

SELECT PART_NUM, DESCRIPTION

FROM PART

WHERE CLASS IN ('AP', 'SG');

请注意,在每个元素上添加'

答案 1 :(得分:1)

引用值'AP','SG',因为它们是字符。

... in('AP','SG')

答案 2 :(得分:0)

我认为你只是缺少引号 - 试试:

WHERE CLASS IN('AP','SG');

答案 3 :(得分:0)

只有 int 值可以在没有 char和varchar 数据类型的引号的情况下编写,您需要使用引号,因此必须在引号中提供值AP和SG,如下所示:

SELECT PART_NUM, DESCRIPTION  
FROM PART  
WHERE CLASS IN ('AP','SG');