如何在SQL中定义替换模式?

时间:2011-08-02 14:00:03

标签: sql regex ms-access functional-programming

严肃的数据库n0ob在这里,

我的问题如下:我想使用连接更新Access中的另一个表。但是,组成两个表之间的连接的列可能不完全相同。例如,一个字段可能是AAA-000及其对应的字段AAA/000

现在我来自Mathematica,在那里我们可以简单地定义规则,表明某些事情可以被认为是相同的,例如“/”和“ - ”字符将是“同构的”......

如何告诉Access(或SQL)如何将一组字符视为相同? (以同样的方式,“a”和“A”将是相同的,因为如果它不区分大小写)

非常感谢

编辑:如果可能的话,这样的查询会有多慢?在Excel中只清理两个表是否更好?

1 个答案:

答案 0 :(得分:4)

据我所知,你不能在Access中这样做。您需要做的是,在进行连接时将一个源转换为另一个源,或者在加入它们之前将两个表标准化。例如,如果源字段(例如Name的值为aaa-000并且您想将其转换为AAA/000),则可以使用以下内容:

UCase(Replace([Name], "-", "/"))