此请求使用 postgresql 引发语句超时。
DELETE FROM my_table where my_table.id IN (
SELECT DISTINCT b.id
FROM my_table a
LEFT JOIN my_table b
on b.rowA = a.rowA and b.rowB = true
WHERE a.rowB = false
)
由于某些原因,我无法在 postgresql 上增加我的超时时间。所以,我需要改进我的要求。如何改进它?也许不使用IN?怎么做?
感谢您的帮助。
编辑更多信息:
我在一个 JAVA 批处理中,我收到的错误消息如下:
原因:org.postgresql.util.PSQLException:错误:由于 org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:1525) 在 org.postgresql.core.v3.QueryExecutorImpl.processResults 的语句超时而取消语句(QueryExecutorImpl.java:1309) 在 org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:188) 在 org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:452) 在 org.postgresql.jdbc2。 AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:354) at org.postgresql.jdbc2.AbstractJdbc2Statement.executeUpdate(AbstractJdbc2Statement.java:308) at org.apache.commons.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:102)