postgres 数据库如何写循环
一条SQL 需要写出前10天到昨天 每天的总计
SELECT
COUNT(DISTINCT 身份证)
FROM 表
WHERE
actv_dt::DATE<=CURRENT_DATE-i
我先写了十条SQL 用union all 连起来
有什么办法用循环做出来同样的结果 网上搜了循环办法 写出如下SQL 但是报错 结果见SQL 下方 求高手解决下
用的是postgres 数据库
do $$
declare
v_idx integer := 1;
begin
while v_idx < 10 loop
SELECT
COUNT(DISTINCT 身份证)
FROM 表
WHERE
actv_dt::DATE<=CURRENT_DATE-(v_idx);
end loop;
end $$;
[Err] ERROR: query has no destination for result data
HINT: If you want to discard the results of a SELECT, use PERFORM instead.
CONTEXT: PL/pgSQL function inline_code_block line 6 at SQL statement
更多 0