Teradata-转换时区时指定的时区无效



我正在尝试使用在本地时区中的日期列和当前日期之间进行连接

SELECT a.* FROM 
a
join b on (a.country_id  = b.country_id)
and date_column =  (Current_date at b.capital_timezone)

b.capital_timezone的值如欧洲中部、欧洲东部、GMT+4、GMT+5:30等,

我收到一个错误,上面写着-"指定的时区无效"

使用以下语法。还要避免时区列中的空值。

Current_date at TIME ZONE coalesce(b.CAPITAL_TIMEZONE,'GMT')

根据Teradata的文档,GMT+5:30似乎是一个无效的时区值。将其转换为有效值。

来自文档:

不遵循单独DST和标准时区位移的字符串

  • 'GMT'
  • 'GMT+1'
  • 'GMT+10'
  • 'GMT+11'
  • 'GMT+1:30'
  • 'GMT+12'
  • 'GMT+13'
  • 'GMT+14'
  • 'GMT+2'
  • 'GMT+3'
  • 'GMT+3:30'
  • 'GMT+4'
  • 'GMT+4:30'
  • 'GMT+5'
  • 'GMT+5:30'
  • 'GMT+5:45'
  • 'GMT+6'
  • 'GMT+6:30'
  • 'GMT+7'
  • 'GMT+8'
  • 'GMT+8:45'
  • 'GMT+9'
  • 'GMT+9:30'
  • 'GMT-1'
  • 'GMT-10'
  • 'GMT-11'
  • 'GMT-2'
  • 'GMT-3'
  • 'GMT-4'
  • 'GMT-5'
  • 'GMT-6'
  • 'GMT-6:30'
  • 'GMT-7'
  • 'GMT-8'

跟随不同DST和标准时区位移的字符串

  • "非洲埃及"
  • "非洲-摩洛哥"
  • "非洲-纳米比亚"
  • "美国阿拉斯加"
  • "美国阿留申"
  • "美国-阿根廷"
  • "美国大西洋"
  • "美国-巴西"
  • "美国中部"
  • "美国-智利"
  • "美国-古巴"
  • "美国东部"
  • "美洲山"
  • "美国纽芬兰"
  • "美国太平洋"
  • "美洲-巴拉圭"
  • "美国-乌拉圭"
  • "亚洲加沙"
  • "亚洲-伊朗"
  • "亚洲-伊拉克"
  • "亚洲伊尔库茨克"
  • "亚洲-以色列"
  • "亚洲约旦"
  • "亚洲堪察加半岛"
  • "亚洲克拉斯诺亚尔斯克"
  • "亚洲黎巴嫩"
  • "亚洲马加丹"
  • "亚洲鄂木斯克"
  • "亚洲-叙利亚"
  • "亚洲符拉迪沃斯托克"
  • "亚洲西岸"
  • "亚洲雅库茨克"
  • "亚洲叶卡捷琳堡"
  • "澳大利亚中部"
  • "澳大利亚东部"
  • "澳大利亚西部"
  • "欧洲中部"
  • "欧洲-东方"
  • "欧洲加里宁格勒"
  • "欧洲-莫斯科"
  • "欧洲萨马拉"
  • "欧洲-西方"
  • "印度毛里求斯"
  • "墨西哥中部"
  • "墨西哥西北部"
  • "墨西哥太平洋"
  • "太平洋新西兰"
  • "太平洋萨摩亚"

最新更新