将一个表中的值求和到另一个表



我是一名使用VB6/Access 2000的SQL新手,正在尝试获取一个将一个表中的值的总和放入另一个表的查询。VB6完成了这项工作,但速度太慢了。我在Access中搜索并尝试了很多次,只是被关键字in、ON、(INNER)JOIN弄丢了,每次都会得到不同的错误。

核心代码应如下所示:

update t1
set t1.value = sum(t2.value)
where
val(t2.code)>89
and
t2.date=t1.date
  • t1.date是一个日期,没有重复
  • t2.code是类似于"0081"、"090"的变量字符串
  • 值为单精度

经过进一步搜索,我在这里找到了一个类似的问题(http://goo.gl/uqlw0U)并尝试过:

UPDATE t1
SET t1.value = 
    (
SELECT 
    SUM(t2.value) 
FROM spese
    WHERE
     t1.date=t2.date
AND
    val(t2.code)>89
    )

但Access只是说"需要可更新的查询"——这是什么意思?

试试这个:

UPDATE t1
 SET t1.value = SUM(t2.value)
FROM t1, t2
WHERE
 val(t2.code)>89
AND
 t2.date=t1.date

相关内容

  • 没有找到相关文章

最新更新