我正在考虑两个表中的以下列,其中 clicks_ 列是空的,应该填充从 mwhen 和 mwho 列中学习的数据。加入应该在 mwho 和 user_id 上。
学生
user_id、clicks_jan、clicks_feb、clicks_mar、clicks_apr
用法
mwho, mwhen
我的问题:
- 我是否需要一个 select 语句,或者我可以立即从“更新学生”移动到设置 (...) 以更新列?
- 当我要求它同时从两个表中提取信息以执行计算时,SQL 会抱怨 - 至少,当我声明“来自学生,使用情况”时它会抱怨。是否有明确的解决方法来使用另一个表的修改信息更新一个表?
到目前为止我所拥有的内容的精简版。(由于栏目更新都是相似的,我这里只展示一个。)
update students
set clicks_jan =
sum(
case
when cast(strftime('%j', mwhen) as integer) < 32 then 1
else 0 end)
from students, usage
inner join students.user_id = usage.mwho;
任何帮助深表感谢。