Spring - finden alle, wo Differenz zwischen Startdatum und ist heute größer als 30 Tage (Monat)

stimmen
0

Ist es möglich, CrudRepository Methode zu schreiben, ohne @query Anmerkung mit der alle Daten zurückgibt, wo Startdatum ist größer als 30 Tage im Vergleich zu dem heutigen Tag?

Mein Modell besteht aus 3 Attribute: DEVICE_ID, Notification_id und created_on

auch zusätzlich würde ich verschiedene Daten von device_id mag

ZUM BEISPIEL

wenn ich in meinem db Ergebnis wie folgt gespeichert:

| dev_id | not_id | created_on |

| 1 | 1 | 2018.12.01 |

| 1 | 2 | 2018-25-07 |

| 2 | 2 | 2018-25-07 |

| 1 | 3 | 2018-16-12 |

| 2 | 3 | 2018-16-12 |

Ergebnis der Daten soll erste 3 Zeilen sein, weil erstellt auf ist Reibe als 30 Tage im Vergleich zu heute Datum

Und danach habe ich möchte auch Daten von Geräte-ID dinstict, so kann ich alle Geräte-IDs, wo am Tag erstellt größer als Monat

Also, ich bin auf der Suche für die beste Lösung für diese Abfrage

Veröffentlicht am 18/12/2018 um 11:10
quelle vom benutzer
In anderen Sprachen...                            


1 antworten

stimmen
0

ok, es ist schwer, ohne @query Anmerkung zu implementieren

also wenn jemand für ähnliche Lösungen suchen, hier ist meine Frage:

@Query(value = "SELECT DISTINCT table.device_id, table.notification_id, table.created_on FROM table WHERE table.created_on < DATE(NOW()) - INTERVAL 30 DAY", nativeQuery = true)
List<DeviceNotification> getDeviceIdWithNotificationOlderThan30Days();
Beantwortet am 18/12/2018 um 23:41
quelle vom benutzer

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more