ms-access - 如何使用 MS Access 中的 SQL 查询将字段值增加 1
问题描述
我正在使用 Automation Anywhere Client 开发一个项目。我正在使用SELECT
和UPDATE
语句将数据从 MS Excel 提取到 MS Access,但数据可能会重复,在这种情况下,我UPDATE
只想要 3 个字段,这些是我正在使用的语句
INSERT INTO $vDiagnosis$
VALUES ('$vID$','$vFirstName$','$vLastName$','$vGender$','$vPhone$','$vAge$',
'$vDateOfVisit$','$vCondition$','$vInsuranceCo$','$vInsuranceNr$','$vVisitingNumber$')
Update $vDiagnosis$
SET DateOfVisit = '$vDateOfVisit$', Condition = '$vCondition$'
WHERE ID = '$vID$'
它们是DateOfVisit和Condition以及VisitingNumber(这是某人访问该医院的次数)。问题是,我试图在每次执行语句时增加VisitingNumberUPDATE
,例如,今天有人访问,我希望它为 1,UPDATE
再次执行语句,我希望增加 1。
我尝试创建一个变量,并在每次UPDATE
执行时递增它,但每当它循环并进入下INSERT
一条语句时,它会继续递增,即使它插入一个新值。
我正在尝试在 Automation Anywhere 上进行的工作的预览
任何帮助,将不胜感激。提前致谢!
解决方案
不确定提到的可变方面,但增加VisitingNumber
计数应该可以通过以下方式完成:
UPDATE $vDiagnosis$
SET DateOfVisit = '$vDateOfVisit$',
Condition = '$vCondition$',
VisitingNumber = VisitingNumber + 1
WHERE ID = '$vID$'
对于插入, 的值visitingNumber
可以简单地为 1 而没有变量,如下所示:
INSERT INTO $vDiagnosis$
VALUES ('$vID$','$vFirstName$','$vLastName$','$vGender$','$vPhone$','$vAge$',
'$vDateOfVisit$','$vCondition$','$vInsuranceCo$','$vInsuranceNr$', 1)
或者更好的是,也许可以在表级别指定默认值 1,然后根本不需要将其包含在插入查询中。(它会在插入时设置为 1)
希望这是有道理的。
推荐阅读
- vba - 如何从字符串执行 VBA 脚本?
- javascript - 为什么我的点符号访问 5 层 json 对象返回 null?
- kotlin - 为 var 类成员设置一个可以更改的新值是类型吗?
- javascript - 将字符串分成 3 部分,前 2 个单词为单词,最后 2 个单词为混合单词
- android - 应用程序上的 Espresso UiObject.click() 从最近的应用程序恢复
- javascript - URL 可以单击 URL 位置内的链接吗?
- javascript - Redis递归:超过最大调用堆栈大小
- rust - 如何实现一个迭代器,该迭代器返回实现某些特征的项目?
- java - 古巴平台:甘特图段重叠
- javascript - 在为我的 Discord.js 机器人编写 Function.js 时,我得到 forEach undefined