我目前有大约 10 个用户在我的工作场所使用他们自己的个性化查询来进行内部流程。用户在查询顶部输入一些值,点击执行,瞧,他们的报告显示在网格中。他们访问的源数据表是相同的,但在其中创建的表是个性化的,后缀为_User1,_User2...User10。每次他们运行查询时,先前创建的表都会被删除并再次创建。整个查询运行大约需要 1 秒。
大多数结构看起来像这样重复 5 次,这 5 个步骤得到所需的输出:
DROP TABLE z
SELECT *
INTO z
FROM y
现在,用户数量增加到 50 个,这意味着主查询代码中的每次调整都会导致我更改 50 个特定于用户的查询并将它们发送回去。10 个用户可以管理和烦人,50 个用户完全无法管理。
我的问题是,构建数据库/查询的最佳方法是什么?理想情况下,我只想有一个查询,一组创建的表(不是 50 个)。由于运行只需要 1 秒,我们是否会冒两个或多个用户(使用不同的输入)同时运行查询、访问相同的表并以某种方式获取错误数据的风险,因为他们在完全相同的时间运行它?
通常有没有特定的方法?希望有人可以提供一些启示。
谢谢