环境:
Oracle 版本:10.2.0.1.0 版服务器:Windows XP
oracle中的语言:
select userenv('language') from dual;
结果:
CHINESE_CHINA.AL32UTF8
表结构:
PARTY_ID NVARCHAR2(50)
PARTY_TYPE NVARCHAR2(50)
表中数据:
PARTY_ID | PARTY_TYPE
---------+-----------
BEST | C
WILL | C
SQL1:
SELECT * FROM cc_party
WHERE party_type = 'C'
结果:
没有
SQL1:
SELECT * FROM cc_party
WHERE party_type = 'C' or party_type = 'C'
结果:
PARTY_ID | PARTY_TYPE
---------+-----------
BEST | C
WILL | C
问题:
为什么我不能通过party_type = 'C'
(SQL1) 选择数据?NVARCHAR2 有什么特别之处吗?
如果我将 where 子句更新为party_type = 'C' or party_type = 'C'
(SQL2),我可以得到结果。这让我很困惑。我想知道为什么我添加 or 子句时会出现结果。