列显示不可打印的值,如何查看它们是什么?

时间:2017-04-20 21:34:46

标签: sql db2 mainframe

我的表格中有一行我无法理解内容。该字段是CHAR(8),数据应该是明显的字母数字,但在下面选择的结果中有几个"点"根据下面的第一行显示:

SELECT DISTINCT (USERID)
FROM USER;
---------------
USERID
---------------
........
AC25
A25A
A25X

事实证明,我无法在特定选择中获取此行,但它不会在下面的查询中返回结果:

SELECT USERID
FROM USER
WHERE USERID = '........';
---------------
USERID
---------------

你能告诉我是否有任何条款你从这条线上选择了这个WEIRD?

我尝试过低价值,但DB2不接受,我从来没有在表中看到过这种情况。 你能帮我找到这种情况的选择,除了用"而不是"?

组合查询

1 个答案:

答案 0 :(得分:5)

点可能代表不可显示的字符。

尝试查看十六进制值

select distinct
  userid, hex(userid)
from user

然后您可以使用十六进制文字来选择该行...

select *
from user
where userid = x'C3C8C1D9D3C5E2'