【发布时间】:2014-04-15 11:58:52
【问题描述】:
我正在寻找比较 VARCHAR2(50 BYTE) 和 CHAR(12 BYTE) 的最佳(和最快)方法。
有两个数据库,第一个包含一个带有CHAR列的table1(下划线表示空格字符填充CHAR长度)
ID VALUE
1 123-45___
2 123-456__
3 123-457__
第二个数据库 (table2) 包含没有空格的 VARCHAR2。
ID VALUE
4 123-45
5 123-456
6 123-457
所以,我想要这样的东西
SELECT table1.ID FROM table1 WHERE table1.VALUE = '123-45'
【问题讨论】:
-
value列是否已编入索引? -
当然有索引,内容很不一样,有50000行
-
你为什么要使用
char?它绝对没有varchar的优势,但有几个严重的缺点 -
你是对的,但这不是我的问题,因为我无法改变它。第一个数据库来自外部第三方。
标签: oracle char comparison varchar2