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

标签 sql regex ms-access functional-programming

这里是严肃的数据库新手,

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

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

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

非常感谢

编辑:如果可能的话,这样的查询会慢多少?无论如何,只清理 Excel 中的两个表会更好吗?

最佳答案

据我所知,您无法在 Access 中执行此操作。您需要做的是在进行联接时将一个源转换为另一个源,或者在联接之前对两个表进行规范化。例如,如果源字段(例如 Name)的值为 aaa-000 并且您希望将其转换为 AAA/000,您可以使用以下内容:

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

关于sql - 如何在 SQL 中定义替换模式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6913278/

相关文章:

regex - 如何替换字符串并保留其大写/小写

regex - 正则表达式获取两个指定字符之间的任何内容

c# - 如何将数据库中的数据显示到文本框

database - Access 数据库替换

sql - SELECT * FROM Employees WHERE NULL IS NULL; SELECT * FROM 员工 WHERE NULL = NULL;

mysql - SQL根据列的计数进行分组

sql - 如何使用计数/'group by' 比较进行自联接?

Mysql:如何获取自定义结果集作为 select 语句输出

ruby - 积极的前瞻不会在第一次出现时停止

c# - 如何在内部网中连接到 Access 上的数据库