如何获取雪花中的表主键列表? [英] How to get list of table primary keys in snowflake?

查看:15
本文介绍了如何获取雪花中的表主键列表?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想在Snowflake中获取List中表的所有主键。 我使用了

SHOW PRIMARY KEYS IN TABLE t1

但输出是一组列:

"created_on"    "database_name" "schema_name"   "table_name"    "column_name"   "key_sequence"  "constraint_name"   "comment"
并且我只需要COLUMN_NAME列。 我试着去做:

select a.* from (SHOW PRIMARY KEYS IN TABLE t1) a

但我收到此错误:

SQL Error [1003] [42000]: SQL compilation error:
syntax error line 1 at position 17 unexpected 'SHOW'.

如果有人有主意,请帮忙。谢谢。

推荐答案

您可以使用RESULT_SCAN函数处理SHOW命令的输出:

https://docs.snowflake.com/en/sql-reference/functions/result_scan.html

SHOW PRIMARY KEYS IN TABLE t1;

SELECT * FROM table(RESULT_SCAN( LAST_QUERY_ID() ));

另一个样本:

SHOW PRIMARY KEYS IN TABLE test1;
select last_query_id();

This is the result:
-------------------
019c7ab2-3200-9e9b-0000-b4550014773e

然后我将其与RESULT_SCAN:

一起使用
SELECT * FROM table(RESULT_SCAN( '019c7ab2-3200-9e9b-0000-b4550014773e'));
请注意,LAST_QUERY_ID始终返回当前会话中的最后一个查询。它不返回与其他会话一起执行的查询ID。

这篇关于如何获取雪花中的表主键列表?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆