gpt4 book ai didi

java - 如何使用空日期进行 SQL 查询?

转载 作者:行者123 更新时间:2023-11-29 12:33:53 25 4
gpt4 key购买 nike

我想做这个查询:

    Class.forName("org.postgresql.Driver");
Connection conn= null;
conn = DriverManager.getConnection("jdbc:postgresql://localhost:5432/postgis","postgres","123456");
PreparedStatement ps = null;
String sql = "SELECT num FROM parcels WHERE code_initial_right =(SELECT code_document FROM documents WHERE number_document=? or date_document='"+docd+"')";
ps = conn.prepareStatement(sql);
ps.setString(1,docn);
ResultSet rs = ps.executeQuery();

但是docd可以等于null。当我尝试这个时,我得到一个错误:

javax.servlet.ServletException: org.postgresql.util.PSQLException: ERROR: invalid input syntax for type date: ""

我能用它做什么?

最佳答案

使用 IS NULL 谓词:

....
OR docd IS NULL OR date_document = docd;

关于java - 如何使用空日期进行 SQL 查询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13622809/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com