Wie können die Funktionen year () und month () in NH Criteria API verwendet werden?

8

Ich muss die Funktionen year () und month () in der Kriterien-API verwenden, um einen Geschäftsfilter-Constrain ausdrücken zu können. Ausdrücke wie

%Vor%

funktioniert offensichtlich nicht - gibt es eine Lösung, wie man das erreicht?

Ich weiß, dass es in HQL durchaus möglich ist, aber ich muss die Abfrage mithilfe der Kriterien-API erstellen, da es einige zusätzliche Prozesse gibt, die die Abfrage bearbeiten, indem Sie Sortieren, Paging usw. hinzufügen.

Beispiel einer HQL-Lösung, die ich in Criteria API umschreiben möchte:

%Vor%     
Buthrakaur 27.04.2009, 11:51
quelle

3 Antworten

8

Dies ist mit Projections.SQLFunction möglich. Arbeitslösung:

%Vor%     
Buthrakaur 28.04.2009, 10:26
quelle
1

Würde so etwas für Sie funktionieren?

%Vor%

Beachten Sie, dass ich Ihre Ausdrucksreihenfolge geändert habe - ich gehe davon aus, dass Sie einen Tippfehler gemacht haben und Sie nach Datumsangaben zwischen DateFrom und DateTo suchen möchten. Wenn die Daten Zeitdaten enthalten, ändert sich der zweite Ausdruck in:

%Vor%

Als Antwort auf einen Kommentar:

%Vor%

Ist Ihre Benutzereingabe in der Form "YYMM"? Wenn das der Fall ist, müssen Sie nur Jahr und Monat von dieser Zeichenfolge analysieren, um fromYear, fromMonth usw. zu erstellen.

Edit: mein 3. und letzter Versuch:

%Vor%     
Jamie Ide 27.04.2009 12:22
quelle
0

Ich bin mir nicht sicher, ob ich verstehe, was Sie mit Ihrer Frage meinen, aber ich hatte eine ähnliche Frage, und ich löste das Problem mit:

%Vor%     
Mats 10.06.2009 05:44
quelle

Tags und Links