java中的一个字段,他的类型是GUID。在db2中,他的类型是数据类型的char。我不明白为什么(x'00345C9101600000018323B4F1311964BB'< x'00345C9101600000018323B4F1311964BB01')是假的。这不是Hexadecimal的比较吗? 谢谢你的帮助。
答案 0 :(得分:0)
由于SQL数据类型是字符,因此应用字符串比较规则,因此较短的字符串在右侧填充空格。空格字符的ASCII代码为x'20'
,大于x'01'
。
答案 1 :(得分:-1)
对于要比较的指定十六进制值太大而无法计算,因为为变量分配的内存是有限的,因此它会抛出垃圾值,导致错误结果。