-2

我有一个查询,我正在检查 whereCOURSE_NUMBER子句中的字符串

select * from CC cc inner join AB_COURSE_ENROLL ab on cc.DCID=ab.LOCAL_ID where cc.STUDENTID=34700 and cc.COURSE_NUMBER IN (TO_CHAR(FOD1050));

问题是,如果我将FOD1050单引号放在查询中,但在我的项目中,我无法将 FOD1050 括在单引号或双引号中。有没有其他方法可以告诉编译器传入的值是字符串?我正在使用甲骨文

4

1 回答 1

0

如果您需要硬编码值,您可以将其构建为单个字符的串联,由它们的 ASCII 代码标识。

例如:

SQL> select chr(70) || chr(79) || chr(68) || chr(49) || chr(48) || chr(53) || chr(48) as str
  2  from dual;

STR
-------
FOD1050

要了解您需要的代码,DUMP可能会很有用:

SQL> select dump('FOD1050') from dual;

DUMP('FOD1050')
----------------------------------
Typ=96 Len=7: 70,79,68,49,48,53,48
于 2017-06-16T09:14:33.650 回答