有人可以帮我完成这个简单的(但我不知道如何做)任务吗?
为了避免浪费时间修复每一行,我正在尝试做这样的事情
SET @auditor = a, b, c;
SELECT *
FROM Audits
WHERE auditor in (@auditor)
我的查询确实很长,这部分“(@auditor)中的WHERE审计员”将是重复的。因此,在劳动力发生某些变化时,先进行某种设置将使更新速度更快(我们聘用了“ d”和/或“ b”)
提前致谢
最佳答案
您可以使用数组变量和FIND_IN_SET
SET @auditors = 'a,b,c';
SELECT *
FROM Audits
WHERE FIND_IN_SET(auditor,@auditors)
说明:
如果在
FIND_IN_SET(auditor,@auditors)
中找到了审计员,则@auditors
为true,并且在这种情况下它将返回索引。但是我会考虑将审计师保存在单独的表中,而不是保存在变量中,以更好地跟踪他们。