Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/80.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
Sql 检查Netezza中的日期值_Sql_Netezza - Fatal编程技术网

Sql 检查Netezza中的日期值

Sql 检查Netezza中的日期值,sql,netezza,Sql,Netezza,在Netezza中,我试图检查日期值是否有效;类似于SQL server中的ISDATE函数 我得到的日期如2013年11月31日是无效的,我如何在Netezza中检查该日期是否有效,以便将其从我的流程中排除 谢谢我不相信有内置的Netezza函数来检查日期是否有效。您可以编写一个LUA函数来完成此操作,也可以尝试加入“日期”查找表,如下所示: 创建包含两列的表: DATE_VALUE date DATE_STRING varchar(10) 将有效日期的数据加载到此表中(使用您喜爱的工具ex

在Netezza中,我试图检查日期值是否有效;类似于SQL server中的ISDATE函数

我得到的日期如2013年11月31日是无效的,我如何在Netezza中检查该日期是否有效,以便将其从我的流程中排除


谢谢

我不相信有内置的Netezza函数来检查日期是否有效。您可以编写一个LUA函数来完成此操作,也可以尝试加入“日期”查找表,如下所示:

创建包含两列的表:

DATE_VALUE date
DATE_STRING varchar(10)
将有效日期的数据加载到此表中(使用您喜爱的工具excel、unix等生成文件)。如果您仅使用此检查,则每个日期值(不同的“有效”格式)甚至可以有多行。如果你填写1900到2100,只要你的数据在这个范围内,你就可以了。这也是一张小桌子,200年来只有7300行。如果需要,添加更多。见鬼,由于新西兰日期数据类型从AD1变为AD9999,因此您可以用340万行(对于新西兰来说很小)完全填充它


然后,要隔离具有无效日期的行,只需使用日期字符串将
连接到该表或
存在
/
不存在
。由于表太小,netezza可能会将其广播给所有SPU,从而使性能影响变得微不足道。

netezza Analytics Package 3.0(免费下载)附带了两个验证日期值的LUA函数:isdate()和todate()。安装/编译非常简单