问一个简单的select语句,老是查询不出来。
是要查询AAA表中Doc_no='WH2@211211'的记录。
1. select * from aaa where Doc_no='WH2@211211' 查询出来是记录数为 0
2. select * from aaa where alltrim(Doc_no)='WH2@211211' 查询出来一大堆Doc_no为空的记录
3. select * from aaa where Doc_no like 'WH2@21121%' 查询出来的有Doc_no为'WH2@211210'的,没有 'WH2@211211'
4. select * from aaa whre left(Doc_no,10)= 'WH2@211211' 查询出来是记录数为 0
5. 用 双等号 "==",查询出来的记录数也是0
++ 只有用 Brow for Doc_no='WH2@211211' 能正常显示出来结果 ,这个Select 到底怎么回事啊?
[解决办法]
这种情况考虑一下,DOC_NO 里有其他非空格的字符吧!
如 Doc_no 里含一些不可见的字符,如界于 CHR(0) 到 CHR(31) 之间的一些不可见字符;
例:
你可以找一条记录先用 REPLACE DOC_NO WITH 'WH2@211211' 写进去一下,然后再用你前面那几条语句查一下试试,如果正常,说明极有可能含其他不可见字符;
[解决办法]
select * from aaa where alltrim(Doc_no)=='WH2@211211'
肯定出来一条