postgresql - 使用返回表、休眠、postgresql 的函数
问题描述
我在 postgresql db 上有一个有效的存储函数
create or replace function sp1(d1 date, d2 date)
returns table(ServiceType varchar, counter bigint) as $$
begin
return query select servicerequesttype, count(*)as counter from events
where creationdate>=d1 and creationdate<=d2
group by servicerequesttype
order by(counter) desc;
end;
$$
language plpgsql;
它返回一个包含两列 varchar 和 bigint 的表。我执行它就像
select * from sp1();
现在我想在休眠时使用它。据我了解,我想在休眠状态下执行原始查询并为结果创建一个列表。
这是可能的,还是我必须重写存储过程?
解决方案
您可以在数据库中创建一个视图,然后在 Java 代码中,您可以查询视图 这是一种在您有复杂查询或聚合值时使用的技术。
@Entity
@Table(name = "V_SERVICE_VIEW")
public class ServiceView {
..
..
}
推荐阅读
- javascript - Dropzone 不会将其他字段绑定到 Asp.Net Core 视图模型
- python - cdk python 制作路由表条目
- android - Truecaller SDK 错误:没有可用的兼容客户端。请更改您的范围
- python - 如何在特定索引处打印字符?
- python - 如何在将字段保存在 Django 中之前覆盖它?
- javascript - 将 JSON 字符串发送到太大的 HTML
- python - Django Pytest 并行运行 - 数据库不存在
- css - 我的网络风格在 heroku 环境中不起作用
- amazon-web-services - 如何使用 datastax 驱动程序改善连接到 Cassandra 集群的速度太慢?
- javascript - Cordova 应用程序中不支持 Fetch API 无法加载文件 URL 方案“文件”错误