gpt4 book ai didi

sql - PostgreSQL:如何使用包含时间戳的字符列

转载 作者:行者123 更新时间:2023-11-29 12:45:28 24 4
gpt4 key购买 nike

我正在使用一个 PostgreSQL 数据库,该数据库包含一个包含文本时间戳的字符列,格式为“Prefix: Wed May 7, 11:30AM-1:30PM”。没有年份,假定所有日期都在当年。我意识到如果这些数据位于具有时间戳或日期和时间类型的列中,那么使用这些数据会更容易,但我无法控制数据库格式,我必须使用其中的内容。

我需要做的是编写一个 SELECT,它只返回具有特定前缀值(例如“public”与“private”)和晚于当前时间/日期的时间/日期的记录。这是一个相对较大的数据库,大约有 100,000 条记录,我需要能够快速进行搜索。任何人都可以就实现这一目标的最佳方法提供建议吗?我考虑过使用正则表达式或 to_date() 和 substring() 的组合,但我不确定如何继续。

额外的问题:有没有一种方法可以使用此字段按日期和时间顺序排列记录?

最佳答案

我认为这样的事情会起作用:

select split_part(col, ':', 1) as prefix,
to_timestamp(to_char(now(), 'YYYY') ||
split_part(col, ':', 2),
'YYYY Dy Mon dd, HH:MIAM'
) as DateTime

关于sql - PostgreSQL:如何使用包含时间戳的字符列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25249988/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com