通过字符串的一部分查询PostgreSQL字符变化列

时间:2014-04-01 16:07:41

标签: python sql postgresql datetime

背景:我们使用python和xlrd模块提取数百个excel文档,并将这些结果放入Postgres 8.4数据库。问题是excel将日期时间存储为一个疯狂的浮点数,它是现在和1900年12月31日之间天数的比率。通常情况下,浮点数的最后有效数字会被截断,这可能会使我们的日期关闭多达35天。

http://office.microsoft.com/en-us/excel-help/datevalue-HP005209044.aspx

因此我们更改了我们的流程,并将日期时间以此格式存储为excel文档中的字符串。     2014年3月31日00:00:00

然后将它们翻录并作为字符变化列提取到postgres数据库中。但是现在是查询的问题。我理解一种可能的解决方案是添加一个额外的列并将日期转换为postgres dtm值。

我的问题是,我可以查询并根据postgres中字符串的部分返回结果。例如,如果我想在2013年2月23日提取所有条目,我可以这样做吗

SELECT * FROM finance_table WHERE date_value contains? = "23-FEB-2013'

1 个答案:

答案 0 :(得分:3)

根据您的要求,这是我在答案格式中的评论:

您想要使用LIKE。如果是您的查询,您将使用类似于WHERE date_value LIKE '%23-FEB-2014%'的内容。 %匹配零个或多个字符,因此它对包含有效。 LIKE的另一个通配符是_,它只匹配一个字符。