मैं तालिका से सभी परिणामों की बजाय लौटाई गई पंक्तियों की गणना करने की कोशिश कर रहा हूं।हाइबरनेट क्वेरी भाषा में पंक्तियों की गणना कैसे करें?
मैंने देखा कि यह इस तरह से किया जा सकता है कि:
((Integer) session.createQuery("select count(*) from ....").iterate().next()).intValue()
लेकिन मैं एक गतिशील क्वेरी का उपयोग कर रहा है जब एक पूर्णांक प्रारूप में इस क्वेरी (यह कहते Query to Integer
से परिवर्तित नहीं कर सकते)
संगृहीत करने का प्रयास जहां मूल्यों इस
theQuery = "select count(*) from THM as thm " +
"join thm.TMC as tmc " +
"join tmc.TIMCC as timcc " +
"where thm.Qid = :Qid and thm.Cv = :Cv and timcc.Did = :Did and timcc.Cv= :Cv";
Query query = session.createQuery(theQuery);
query.setInteger("Qid", Integer.parseInt(Qid));
query.setInteger("Did", Did);
query.setInteger("Cv",cV);
जैसी क्वेरी नीचे उल्लेख किया जाएगा अब, मैं कैसे एक va में हाइबरनेट क्वेरी का उपयोग करके लौटे सभी पंक्तियों की गिनती प्राप्त कर सकते हैं list.size
का उपयोग किए बिना व्यवहार्य लेकिन सीधे पूछताछ से?
query.uniqueResult(); बहुत अच्छा काम कर रहा है और ऐसा करता है .iterate()। अगला()) .intValue() – user1002782
क्या होगा यदि मेरी क्वेरी गिनती नहीं है (*) इसके बजाय यह "THM से" – Jerry