#python #python-3.x #django
Вопрос:
У меня есть таблица, содержащая данные о ценах на карты, и я пытаюсь получить данные о ценах для разных карт, card_id
но, похоже, строка выбирается случайным образом. Я хотел бы получить последние datetime
данные о ценах на каждую карту card_id
.
Стол:
ID | цветной лист | фольга | дата-время | card_id |
---|---|---|---|---|
«fb7fbcdc» | 0.20 | 0.49 | «2021-10-11 10:03:51.943603 01» | «00302342» |
«d0d6f491» | 0.10 | 0.49 | «2021-10-11 10:01:09.916438 01» | «00302342» |
«bfdca73b» | 0.03 | 0.04 | «2021-10-11 10:03:51.907601 01» | «012e0b83» |
«33c7aeae» | 0.10 | 0.04 | «2021-10-11 10:01:09.875894 01» | «012e0b83» |
«94ca3324» | 0.10 | 0.04 | «2021-10-11 10:01:09.961261 01» | «0307f37b» |
«2e992a8d» | 0.03 | 0.04 | «2021-10-11 10:03:51.988602 01» | «0307f37b» |
В настоящее время я получаю данные о ценах, используя следующий код:
pricing_cards.objects.filter(card_id__rarity='mythic').values_list('nonfoil', flat=True).distinct('card_id'),
Например, это возвращение:
ID | цветной лист | фольга | дата-время | card_id |
---|---|---|---|---|
«d0d6f491» | 0.10 | 0.49 | «2021-10-11 10:01:09.916438 01» | «00302342» |
«bfdca73b» | 0.03 | 0.04 | «2021-10-11 10:03:51.907601 01» | «012e0b83» |
«94ca3324» | 0.10 | 0.04 | «2021-10-11 10:01:09.961261 01» | «0307f37b» |
Но я бы хотел, чтобы он вернулся:
ID | цветной лист | фольга | дата-время | card_id |
---|---|---|---|---|
«fb7fbcdc» | 0.20 | 0.49 | «2021-10-11 10:03:51.943603 01» | «00302342» |
«bfdca73b» | 0.03 | 0.04 | «2021-10-11 10:03:51.907601 01» | «012e0b83» |
«94ca3324» | 0.10 | 0.04 | «2021-10-11 10:01:09.961261 01» | «0307f37b» |
Ответ №1:
Это должно сделать это:
pricing_cards.objects.filter(card_id__rarity='mythic').order_by('card_id', '-datetime').distinct('card_id').values_list('nonfoil', flat=True)