我在MySQL中有2个表,一个用于文件,一个用于节点。在这种情况下,节点是存储文件的服务器。
文件表格:
id name size nodeid
===============================
1 doc-file 12354 1
2 mpg-file 300000 1
3 txt-file 150 2
4 doc-file 2544 3
节点表
id nodeid nodesize numfiles nodemaxsize
=============================================
1 1 312354 2 20000000
2 2 150 1 20000000
3 3 2544 1 20000000
4 4 0 0 20000000
我想使用表文件中的COUNT(id
)和SUM(size
)“填充”表节点。所以我需要插入新行,如果表 上的nodeid不存在,而表文件中的COUNT(id
)和SUM(size
)并且缺省nodemaxsize = MAXSIZE(在此示例中为20000000)或者如果nodeid存在则更新值(nodesize和numfiles)。
有一种简单的方法只能用SQL插入/更新其他表吗?