Mad*_*urf 1 sql db2 performance
我想在VARCHAR(200)字段上使用ORDER BY进行SELECT.阅读DB2 v9.1 for zOS站点就知道了
根据语言元素中描述的比较规则执行排序.
并且在字符串比较的规则中说
通过比较每个字符串的相应字节来比较两个字符串.如果字符串的长度不同,则使用空白填充的较短字符串的临时副本进行比较,使其与另一个字符串具有相同的长度.
我的问题是,这是否意味着我的ORDER BY子句会随着数据量的增加而变慢,因为在后台进行LENGTH()函数调用,然后对每个字符串执行填充以便按顺序返回结果?
您应该在VARCHAR字段上使用索引.索引是一种精确优化此过程的结构.
您指的那些比较确实在没有索引时发生.但是,如果存在索引,则通常会有一个结构维护该字段的表顺序,因此ORDER BY不会产生大量额外开销.