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

0 sql db2 mainframe

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

SELECT DISTINCT (USERID)
FROM USER;
---------------
USERID
---------------
........
AC25
A25A
A25X
Run Code Online (Sandbox Code Playgroud)

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

SELECT USERID
FROM USER
WHERE USERID = '........';
---------------
USERID
---------------
Run Code Online (Sandbox Code Playgroud)

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

我尝试过低价值,但DB2不接受,我从未在表中看到过这种情况.你能帮我找到这个案例的选项,除了把一个查询与"不在"放在一起吗?

Cha*_*les 5

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

试着看十六进制值

select distinct
  userid, hex(userid)
from user
Run Code Online (Sandbox Code Playgroud)

然后你可以使用hex literal来选择那一行......

select *
from user
where userid = x'C3C8C1D9D3C5E2'
Run Code Online (Sandbox Code Playgroud)