查询以从system.catalog表中获取列并执行选择查询

问题描述 投票:0回答:1

我正在尝试建立查询以从system.CATALOG表中获取列,并继续基于结果集进行查询。我查看了几个查询,但似乎找不到满足我要求的任何内容。我没有什么可展示的,我不知道尝试过如何解决这个问题。

我正在使用Apache Phoenix DB。 (因为我有兴趣学习,所以任何SQL都还可以。)

我现在在下面编写了查询,它将查询表element中模式test中以A开头的所有列名称。

SELECT
  COLUMN_NAME
FROM SYSTEM.CATALOG
WHERE TABLE_SCHEM = 'TEST'
  AND TABLE_NAME = 'ELEMENT'
  AND COLUMN_NAME LIKE 'A%'";

现在,我想使用上述查询的结果集中的UPSERT查询中的列名称列表,以更新element表记录中的这些列。所以我被困在这里。

sql phoenix
1个回答
0
投票

尝试一下,效果很好。

SELECT column_name
  FROM system.catalog
  WHERE table_name = 'your_table' AND key_seq IS NOT NULL
© www.soinside.com 2019 - 2024. All rights reserved.