我有一个table
与列code
和document
。该列code
可能具有字母数字值(仅字母)和/或数值(仅数字)。在模型中,每个数字code
都有一个等效的字母数字code
。下面的记录代表了这种情况的一个例子(格式为 ( document
, code
);( document
, code
):
(12345678900,ABC);(12345678900,999)
但是,一个字母数字code
可能并不总是有一个等价的 numeric code
,所以下面的例子代表了我们有 3 条不同记录的情况
(12345678900,ABC);(12345678900,999);(00987654321,XYZ);(11111111111,DEF)
考虑到这一点,我想做的是:我将用来搜索记录的总是字母数字code
,当我有一个等效的数字时,我想要数字的结果,但是当字母没有有数字等价物,我想要字母数字code
。
例如,如果我执行以下选择,我会得到以下结果:
SELECT code FROM table WHERE code = 'ABC'
-> 结果:999SELECT code FROM table WHERE code = 'DEF'
-> 结果:DEFSELECT code FROM table WHERE code = 'XXX'
-> 结果:(空白)
如果有人可以帮助我,我将不胜感激。
问候,
AMR