Hallo,
hätte eine Frage zur DB- Abfrage. Ich habe folgende Abfrage unten, wobei nicht immer alle Werte belegt sind, soll heißen, es ist immer unterschiedlich, welche column's nicht null sind (mir ist klar, dass die Tabelle nicht optimal ist und den 3 Normen entspricht aber es geht in diesem Fall nicht anders)
Beispiel:
Abfrage1:
column1 und column2 sind nicht null - alle anderen sind null
Abfrage2:
column4 und 5 sind nicht null - alle anderen sind null
Das funkt natürlich nicht, es wird nichts gefunden,
Wie kann ich das am Besten machen, ich will nicht für jede Abfrage eine Methode machen und auch nicht unbedingt mit if abfragen.
Weiß jemand für das eine elegante Lösung?
Besten Dank,
Poller
hätte eine Frage zur DB- Abfrage. Ich habe folgende Abfrage unten, wobei nicht immer alle Werte belegt sind, soll heißen, es ist immer unterschiedlich, welche column's nicht null sind (mir ist klar, dass die Tabelle nicht optimal ist und den 3 Normen entspricht aber es geht in diesem Fall nicht anders)
Beispiel:
Abfrage1:
column1 und column2 sind nicht null - alle anderen sind null
Abfrage2:
column4 und 5 sind nicht null - alle anderen sind null
Das funkt natürlich nicht, es wird nichts gefunden,
Wie kann ich das am Besten machen, ich will nicht für jede Abfrage eine Methode machen und auch nicht unbedingt mit if abfragen.
Weiß jemand für das eine elegante Lösung?
Besten Dank,
Poller
Code:
final Criteria criteria = getSession().createCriteria(getEntityClass());
criteria.add(Restrictions.eq("column1", column1));
criteria.add(Restrictions.eq("column2", column2));
criteria.add(Restrictions.eq("column3", column3));
criteria.add(Restrictions.eq("column4", column4));
criteria.add(Restrictions.eq("column5", column5));
... = criteria.uniqueResult();