警告:含糊不清的问题会比比皆是,因为我对数据库深有了解。
我刚刚发现我需要使用视图作为 cronned update 语句的代理。我可以在某种程度上使视图正常工作,但是我遇到了行问题。
这篇文章帮助我完成了我需要的更新,但现在我知道视图可以在需要时而不是按 cron 计划运行更新,我如何根据视图的行 ID 或等效项设置视图的列值?
我有我需要的选择:
SELECT SUM( table2.column1/ (
SELECT table2constant
FROM table3
)
FROM table2
WHERE table2table1id = table1id
table1id 是 table1 的 AI id 列。table2table1id 是对 table1id 的 PKd。我希望视图具有与 table2 一样的 table1id 列 PKd,并且视图需要表示每个不同的 table1id。
我敢肯定行话的方式,但希望你能看到我需要什么。
为清晰起见,将提供尽可能多的编辑。
提前谢谢了!
编辑1
我应该创建一个触发器来在插入到 table1 时创建视图吗?刚刚发现我需要/想要的物化?
明晰
我需要每个 table1.table1id 的总和值
进步
使用此代码,我从 table1 获取第一个 id,并且只获取总和。我需要每个 table1.id 的总和。
CREATE VIEW db1.sums as
SELECT SUM( table2.column1/ (
SELECT table2constant
FROM table3
) as theSum, table1id
FROM table1, table2
WHERE table2.table2table1id = table1.table1id