Snowflake cloud data platform 将Oracle to#u date(';24-03-20';,';DD-MM-RR';)转换为雪花
我需要你的小小帮助。我必须在snowflake中使用to_date('24-03-20','DD-MM-RR')Oracle函数。两个输出应该是匹配的。有人能帮我吗。小心YY,因为Oracle中的RR与Snowflake的YY表现不同。Oracle中的RR基本上将两位数年份转换为“最接近2000年”的模型,例如49的RR字符串表示2049年,51的RR字符串表示1951年 如果需要RR“功能”,请参阅此链接中对两位数字的启动会话参数的引用: 此处进一步定义了该参数: 因此,您可以使用YY,但在执行select之前需要运行ALTER SESSION命令,示例如下:Snowflake cloud data platform 将Oracle to#u date(';24-03-20';,';DD-MM-RR';)转换为雪花,snowflake-cloud-data-platform,Snowflake Cloud Data Platform,我需要你的小小帮助。我必须在snowflake中使用to_date('24-03-20','DD-MM-RR')Oracle函数。两个输出应该是匹配的。有人能帮我吗。小心YY,因为Oracle中的RR与Snowflake的YY表现不同。Oracle中的RR基本上将两位数年份转换为“最接近2000年”的模型,例如49的RR字符串表示2049年,51的RR字符串表示1951年 如果需要RR“功能”,请参阅此链接中对两位数字的启动会话参数的引用: 此处进一步定义了该参数: 因此,您可以使用YY,但
ALTER SESSION SET TWO_DIGIT_CENTURY_START = 1970; --the default
SELECT to_date('24-03-20', 'DD-MM-YY'); --2020-03-24
ALTER SESSION SET TWO_DIGIT_CENTURY_START = 1900; --not what you want
SELECT to_date('24-03-20', 'DD-MM-YY'); --1920-03-24
ALTER SESSION SET TWO_DIGIT_CENTURY_START = 1950; --RR like
SELECT to_date('24-03-20', 'DD-MM-YY'); --2020-03-24
SELECT to_date('24-03-49', 'DD-MM-YY'); --2049-03-24
SELECT to_date('24-03-50', 'DD-MM-YY'); --1950-03-24
我希望这有助于…Rich小心YY,因为Oracle中的RR与Snowflake的YY表现不同。Oracle中的RR基本上将两位数年份转换为“最接近2000年”的模型,例如49的RR字符串表示2049年,51的RR字符串表示1951年 如果需要RR“功能”,请参阅此链接中对两位数字的启动会话参数的引用: 此处进一步定义了该参数: 因此,您可以使用YY,但在执行select之前需要运行ALTER SESSION命令,示例如下:
ALTER SESSION SET TWO_DIGIT_CENTURY_START = 1970; --the default
SELECT to_date('24-03-20', 'DD-MM-YY'); --2020-03-24
ALTER SESSION SET TWO_DIGIT_CENTURY_START = 1900; --not what you want
SELECT to_date('24-03-20', 'DD-MM-YY'); --1920-03-24
ALTER SESSION SET TWO_DIGIT_CENTURY_START = 1950; --RR like
SELECT to_date('24-03-20', 'DD-MM-YY'); --2020-03-24
SELECT to_date('24-03-49', 'DD-MM-YY'); --2049-03-24
SELECT to_date('24-03-50', 'DD-MM-YY'); --1950-03-24
我希望这有助于…Rich