SQLite
здесь данные
| 80 | 1536843922000 | 24440271 | 26B008D0-EDA3-4F83-9AFF-6C04BBB1BF33 |
| 109 | 1536843922000 | 36656927 | 9856BAB6-51BE-4EA8-B0D7-72ABF4A452A4 |
| 83 | 1536843922000 | 94020805 | 26B008D0-EDA3-4F83-9AFF-6C04BBB1BF33 |
| 77 | 1536930322000 | 22240444 | 26B008D0-EDA3-4F83-9AFF-6C04BBB1BF33 |
| 53 | 1536930322000 | 24424792 | 26B008D0-EDA3-4F83-9AFF-6C04BBB1BF33 |
| 79 | 1536930322000 | 24440271 | 26B008D0-EDA3-4F83-9AFF-6C04BBB1BF33 |
| 113 | 1536930322000 | 37473218 | 9856BAB6-51BE-4EA8-B0D7-72ABF4A452A4 |
| 115 | 1536930322000 | 38483615 | 9856BAB6-51BE-4EA8-B0D7-72ABF4A452A4 |
| 116 | 1536930322000 | 38483615 | 9856BAB6-51BE-4EA8-B0D7-72ABF4A452A4 |
| 47 | 1537016722000 | 24253674 | 26B008D0-EDA3-4F83-9AFF-6C04BBB1BF33 |
| 105 | 1537016722000 | 34664388 | 9856BAB6-51BE-4EA8-B0D7-72ABF4A452A4 |
| 117 | 1537016722000 | 38483615 | 9856BAB6-51BE-4EA8-B0D7-72ABF4A452A4 |
| 58 | 1537103122000 | 37045208 | 9856BAB6-51BE-4EA8-B0D7-72ABF4A452A4 |
| 59 | 1537103122000 | 37045208 | 9856BAB6-51BE-4EA8-B0D7-72ABF4A452A4 |
А вот запрос sqlite, который удаляет дубликаты:
DELETE FROM notification_invoice WHERE notificationDate >= 1536883200000 AND providerId in ("26B008D0-EDA3-4F83-9AFF-6C04BBB1BF33","9856BAB6-51BE-4EA8-B0D7-72ABF4A452A4")
AND EXISTS (
SELECT 1
FROM notification_invoice t2
WHERE t2.providerId in ("26B008D0-EDA3-4F83-9AFF-6C04BBB1BF33","9856BAB6-51BE-4EA8-B0D7-72ABF4A452A4")
AND t2.notificationDate = notification_invoice.notificationDate
AND notification_invoice.notificationDate >= 1536019200000
AND t2.ownerKey = notification_invoice.ownerKey
AND t2._id > notification_invoice._id
)
А вот результат:
| _id | notificationDate | ownerKey | providerId |
|-----+------------------+----------+--------------------------------------|
| 58 | 1537103122000 | 37045208 | 9856BAB6-51BE-4EA8-B0D7-72ABF4A452A4 |
| 115 | 1536930322000 | 38483615 | 9856BAB6-51BE-4EA8-B0D7-72ABF4A452A4 |
Нет, я проверяю результат, получая все данные:
select _id, notificationDate, ownerKey, providerid from notification_invoice where notificationDate >= 1536883200000 and providerId in ("26B008D0-EDA3-4F83-9AFF-6C04BBB1BF33","9856BAB6-51BE-4EA8-B0D7-72ABF4A452A4") order by ownerKey, notificationDate
здесь результат:
| _id | notifDate | ownerKey | providerId |
|-----+------------------+----------+--------------------------------------|
| 77 | 1536930322000 | 22240444 | 26B008D0-EDA3-4F83-9AFF-6C04BBB1BF33 |
| 47 | 1537016722000 | 24253674 | 26B008D0-EDA3-4F83-9AFF-6C04BBB1BF33 |
| 53 | 1536930322000 | 24424792 | 26B008D0-EDA3-4F83-9AFF-6C04BBB1BF33 |
| 79 | 1536930322000 | 24440271 | 26B008D0-EDA3-4F83-9AFF-6C04BBB1BF33 |
| 105 | 1537016722000 | 34664388 | 9856BAB6-51BE-4EA8-B0D7-72ABF4A452A4 |
| 59 | 1537103122000 | 37045208 | 9856BAB6-51BE-4EA8-B0D7-72ABF4A452A4 |
| 113 | 1536930322000 | 37473218 | 9856BAB6-51BE-4EA8-B0D7-72ABF4A452A4 |
| 116 | 1536930322000 | 38483615 | 9856BAB6-51BE-4EA8-B0D7-72ABF4A452A4 |
| 117 | 1537016722000 | 38483615 | 9856BAB6-51BE-4EA8-B0D7-72ABF4A452A4 |
В случае успеха удалите все дубликаты, кроме одного:
| 116 | 1536930322000 | 38483615 | 9856BAB6-51BE-4EA8-B0D7-72ABF4A452A4 |
Почему бы не удалить эту запись?