大家好。
有个问题请问大家
informix数据库 一个很大的并且一直写入的表中,怎么才能得到一个时间点的总数。
注:表A大约有300万条数据,每天有40W的减少。
比如说 我要每天得到表A的出入库数量,我在每天0:00执行select count(*) from A 之后把两天相减,得到的数总是和实际有+-10的误差。要怎样才能避免?(因为我是怀疑,这些误差是在 select时的误差,表有索引,执行sel大约用时2-3秒)
------解决方案--------------------------------------------------------
如果你要确切的数值,必须要对该表上锁(set lock)才能避免其它用户同时向它写数据。
------解决方案--------------------------------------------------------
最好的方法是先让部分数据上机器上跑一遍,测试一下用多长时间,然后想办法把效率提高一些。
单纯地计算时间的话,每次跑数据的时候都有开始时间和结束时间的。
------解决方案--------------------------------------------------------
锁表把