如何获取雪花中的表主键列表? [英] How to get list of table primary keys in snowflake?
本文介绍了如何获取雪花中的表主键列表?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想在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屋!
查看全文