sql从字符串中筛选两个日期并计算差异

sql从字符串中筛选两个日期并计算差异,sql,presto,trino,Sql,Presto,Trino,我在col1中有一个字符串从表中选择col1 2020-02-18T04:45:16.099-08:00[PST8PDT]到2020-04-02T08:45:16.099-07:00[PST8PDT]诸如此类的废话 如何从和到过滤之后的日期,并计算天数差异? 用于从字符串中取出“from”部分和“to”部分(有关更多信息,请参阅) 然后使用将日期/时间字符串转换为带有时区的时间戳(3) 然后使用计算从天到秒的间隔时间 然后使用day提取间隔的day部分 正则表达式提取示例: trino>

我在col1中有一个字符串
从表中选择col1

2020-02-18T04:45:16.099-08:00[PST8PDT]到2020-04-02T08:45:16.099-07:00[PST8PDT]诸如此类的废话

如何从
到过滤
之后的日期,并计算天数差异?

  • 用于从字符串中取出“from”部分和“to”部分(有关更多信息,请参阅)
  • 然后使用将日期/时间字符串转换为带有时区的时间戳(3)
  • 然后使用计算从天到秒的间隔时间
  • 然后使用
    day
    提取间隔的day部分
  • 正则表达式提取示例:

    trino> SELECT day(from_iso8601_timestamp('2020-04-02T08:45:16.099-07:00')
        ->          - from_iso8601_timestamp('2020-02-18T04:45:16.099-08:00'));
     _col0
    -------
        44
    (1 row)
    

    (使用Trino 352测试)

    您使用的是什么SQL?T-SQL(SQL Server/Azure SQL)、PL/SQL(Oracle)、MySQL,还有其他什么吗?对于SQL的这种变体,您是否查看了如何在
    WHERE
    子句中设置日期范围,或者如何计算两个日期之间的差异?