Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/redis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将时间的CAST或SUBSTR作为主键的一部分的DB2表?_Db2_Primary Key - Fatal编程技术网

将时间的CAST或SUBSTR作为主键的一部分的DB2表?

将时间的CAST或SUBSTR作为主键的一部分的DB2表?,db2,primary-key,Db2,Primary Key,我正在尝试创建一个表,它可以由不同的应用程序经常更新,但我只关心每小时的最后一个条目,而不管是什么更新了它。考虑到这一点,我认为使用小时(当前时间)将是主键的一部分(只是一部分,而不是全部)。这可以是以下任何内容(如果有效): 或 如果我将lastvalue创建为:lastvalue time not null,默认值为 create unique index foo_inx on foo (col1, col2, lastdate, hour(lastvalue)); 我希望这是一个相当有趣

我正在尝试创建一个表,它可以由不同的应用程序经常更新,但我只关心每小时的最后一个条目,而不管是什么更新了它。考虑到这一点,我认为使用小时(当前时间)将是主键的一部分(只是一部分,而不是全部)。这可以是以下任何内容(如果有效):

如果我将lastvalue创建为:lastvalue time not null,默认值为

create unique index foo_inx on foo (col1, col2, lastdate, hour(lastvalue));
我希望这是一个相当有趣的问题。:-)

  • 编辑:ddl不工作。我已将lastdate添加到唯一索引中
是否只保留最后一天的值?…因此,如果您尝试运行此功能,它是否有效?如果没有,您可以使用
十进制(2,0)
作为类型(以及一些适当的
检查
约束),然后使用存储过程插入以根据需要导出值来合成它@然而,伦纳德有一个很好的观点;如果数据在表中存放超过24小时,你就完蛋了——一小时本身是无效的。日期/时间也得到。。。在全球范围内很奇怪——例如,有些时区具有非整数偏移。没有足够的信息,但我会从存储完整的时间戳开始,并使用视图来派生此信息。使用时间戳和视图过滤的有趣视角。一方面,这很简单,也很明显(这是件好事)。另一方面,我担心由于这些传感器每小时可能发射数千次,我担心的是储存垃圾。我想我将尝试存储日期和时间列,使用视图进行过滤,偶尔在下班时间使用“重复数据消除”过程进行清理。谢谢。
create unique index foo_inx on foo (col1, col2, lastdate, hour(lastvalue));