确定DB2文本字符串长度

Fra*_*umn 13 sql db2

我试图找出如何编写一个SQL语句,它将获取字符串不是12个字符长的字段.如果它们是10个字符,我只想抓取字符串.

DB2中有什么功能可以做到这一点?

我认为它会是这样的,但我找不到任何东西.
select * from table where not length(fieldName, 12)

Rob*_*ujo 29

从类似的问题DB2 - 查找并比较表字段中值的lentgh - 添加RTRIM,因为LENGTH将返回列定义的长度.这应该是正确的:

select * from table where length(RTRIM(fieldName))=10
Run Code Online (Sandbox Code Playgroud)

  • 这就是诀窍!它获取字符串的实际长度,如OP询问的而不是列的长度. (2认同)
  • 这是不正确的。它将返回字段长度,而不是字符长度 (2认同)

dav*_* a. 26

这将获取包含10个字符长的字符串(在fieldName列中)的记录:

 select * from table where length(fieldName)=10
Run Code Online (Sandbox Code Playgroud)