SQL While 循环从另一个选择中选择

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

需要一些帮助来解决这个问题。 我有一个来自数据库本身的查询来获取 table_schema 名称并创建一个行号:

SELECT ROW_NUMBER() OVER (ORDER BY TABLE_SCHEMA), TABLE_SCHEMA
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_SCHEMA like 'test\_%'
ORDER BY TABLE_SCHEMA

我想用这个查询创建一个 while 循环,用这个查询从每个表中给我数据:

Select 
count('list'),
name 
From test_123.order
group by name

所以像这样的伪代码:

While row_number less than total rows
Select 
count('list'),
name 
From concat((SELECT ROW_NUMBER() OVER (ORDER BY TABLE_SCHEMA), TABLE_SCHEMA
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_SCHEMA like 'test\_%'
ORDER BY TABLE_SCHEMA),'.order')
group by name

最后我想得到这个:

ROW_NUMBER TABLE_SCHEMA 姓名 计数('列表')
1 test_123 杰克 100
2 test_234 开膛手 200

这有可能实现吗?

亲切的问候

sql postgresql select while-loop subquery
© www.soinside.com 2019 - 2024. All rights reserved.