首页 > 解决方案 > 列索引超出范围

问题描述

select * from crosstab
  ($$ select ord_no,opr_no,prod_qty from sg_tw.at_wrkord_dtl 
  where date(modi_dt)>=(:start_date) 
  and date(modi_dt)<= (:end_date) order by 1,2 $$, $$ values 'ord_no', '10','20','30','40','50','60','70','110' $$) as x
 (ord_no bigint, "10" int, "20" int, "30" int, "40" int, "50" int, "60" int, "70" int ,"110" int)

错误:org.postgresql.util.PSQLException:列索引超出范围:1,列数:0。

当我在我的 postgressql 中执行这个查询时,我遇到了这个问题。

请帮我解决这个问题。

我是IT新手...

标签: postgresqljdbc

解决方案


您必须使用 JDBC 驱动程序,因为那是该错误消息的来源。

问题是您将参数编写为美元引用的字符串文字的一部分。字符串文字中的参数不会被替换。


推荐阅读