有两张桌子
名称 - 带列 - OriginalName、用户名
姓名 | 用户 |
---|---|
阿尔纳布·艾哈迈德 | “ancdv” |
阿尔纳布·艾哈迈德 | “ancdv4” |
阿尔纳布·艾哈迈德(TY) | “id001” |
myTable - 包含列 - CustomerName myTable:([]CustomerName: "Arnab ahmed";"id001";"ancdv";"Arnab ahmed (TY) )
客户姓名 |
---|
“阿纳布·艾哈迈德” |
“id001” |
“ancdv” |
“阿尔纳布·艾哈迈德 (TY) |
-> 名称表具有固定长度,例如最多 20 行,其中包含值 -> myTable 有 n 个值,例如 2000 行,其中包含客户名称
我需要检查名称表(任何列)中是否存在 myTable 中的客户名称(如果存在),然后将客户名称更改为原始名称(来自名称表)
我需要检查 customerName 是否存在于 输出应该是
客户姓名 |
---|
“阿纳布·艾哈迈德” |
“阿纳布·艾哈迈德” |
“阿纳布·艾哈迈德” |
“阿纳布·艾哈迈德” |
如何实现以上目标
我不确定 Arnab ahmed (TY) 是什么,为什么没有出现在您的最终结果中?
如果我理解得很好,执行此 SQL 查询后,myTable 将更新为所需的结果,其中在找到匹配项时将 CustomerName 替换为 OriginalName。
不要忘记创建备份,因为此查询将更新您的表:
q('update CustomerName:?[CustomerName in Names`CustomerName; Names`OriginalName; CustomerName] from myTable', { myTable, Names }, (err, result) => {
if (err) {
console.error(err);
} else {
console.log(result.myTable);
}
});