使用hibernate框架,hql語言,mysql數據庫,在做查詢的時候遇到一個問題,發現查詢的條件爲空,但是查詢總是報錯。原因是當條件爲空時,條件上應該用 is not,而不是這樣
Query query_getMoney = session1.createQuery("select sum(" + sqlField_Summation + ") from Lshsje where spNo1 = :a and spNo2 = :b and itemNo = :c");
query_getMoney.setString("a", sp1No);
query_getMoney.setString("b", null);
query_getMoney.setString("c", itemNo);
money = (double) query_getMoney.uniqueResult();
改成這樣就好了
Query query_getMoney = session1.createQuery("select sum(" + sqlField_Summation + ") from Lshsje where spNo1 = :a and spNo2 is null and itemNo = :c");
query_getMoney.setString("a", sp1No);
query_getMoney.setString("c", itemNo);
money = (double) query_getMoney.uniqueResult();