提问人:Ben Swinburne 提问时间:1/25/2023 更新时间:1/25/2023 访问量:130
Postgres timezone_minute具有显式类型转换的函数
Postgres timezone_minute function with explicit type casts
问:
我有两列,和 ,都是字符串。我可以将它们连接起来以获得一列。date
time
timestamp
我需要使用 timezone_minute()
函数†。我尝试了各种参数格式,但反复遇到错误
Query 1 ERROR: ERROR: function timezone_minute(timestamp without time zone) does not exist
LINE 1: select timezone_minute('2023-01-25T05:36:48Z'::date AT TIME ...
^
HINT: No function matches the given name and argument types. You might need to add explicit type casts.
例如
-- function timezone_minute(timestamp without time zone) does not exist
select timezone_minute('2023-01-25T05:36:48Z'::date AT TIME ZONE 'UTC');
-- function timezone_minute(timestamp with time zone) does not exist
select timezone_minute('2023-01-25T05:36:48Z'::date AT TIME ZONE 'UTC');
select timezone_minute('2023-01-25T05:36:48Z'::timestamptz);
select timezone_minute(cast('2023-01-25T05:36:48Z' as TIMESTAMP));
-- etc
我如何正确使用timezone_minute - 不幸的是,严重缺乏此特定功能的文档。
†我不能完全控制最终查询,因此需要使用这个函数。生成的查询利用 timezone_minute(),我基本上可以设置参数。
答:
1赞
user330315
1/25/2023
#1
不幸的是,严重缺乏此特定功能的文档。
是的,因为它不是一个函数。
它是 extract()
函数的参数:
select extract(timezone_minute from '2023-01-25T05:36:48Z'::timestamptz);
评论
0赞
Ben Swinburne
1/26/2023
啊哈!我试着这么想,但里面有一个随机的时区关键字。有趣的是,生成的查询将其用作函数而不是参数。我必须联系供应商。谢谢你的回答select extract(timezone_minute from timestamp '2023-01-25T05:36:48Z'::timezonetz);
0赞
Ben Swinburne
1/27/2023
由于配置错误,它回退到 Athena 驱动程序(默认),并生成与 Athena 用作函数的查询兼容。timestamp_minute()
评论