cda*_*bel 9 sql amazon-redshift
pg_typeof()在 PostgreSQL 中,您可以使用SELECT 语句中的函数来获取 SQL 查询返回值的数据类型。
尽管 Redshift 有 SQL 沿袭,但 Redshift 中不存在此函数。
我想做这个:
SELECT pg_typeof(0.25::numeric(5,2)) ;
并得到:
numeric(5,2)
如何获取 SQL 查询返回值的数据类型?这是为了帮助我对 ETL 开发进行单元测试。
小智 1
不确定是否可以在您的用例中使用,但我使用此查询来获取 Redshift 中的类型
SELECT distinct
t.relname as table,
a.attname as column,
pg_catalog.format_type(a.atttypid, a.atttypmod) as type
FROM pg_attribute a
JOIN pg_class t on a.attrelid = t.oid
JOIN pg_namespace s on t.relnamespace = s.oid
WHERE a.attnum > 0
AND NOT a.attisdropped
AND LENGTH(a.attname) > 1
AND s.nspname in ({{schemas}})
Run Code Online (Sandbox Code Playgroud)