実現したいこと
class TestData(models.Model):
name = models.CharField(max_length=128)
test_data = models.CharField(max_length=128)
に保存したデータの、nameが重複する場合はその中のidが新しいものだけを取得し、さらにそれをidの新しいもの順に並べたデータを取得したいのですが、やり方がわかりません。
例
id:1 name:A test_data:りんご
id:2 name:B test_data:ばなな
id:3 name:A test_data:ばなな
id:4 name:B test_data:りんご
id:5 name:C test_data:すいか
id:6 name:A test_data:いちご
id:7 name:B test_data:めろん
id:8 name:A test_data:すいか
→<id:8 name:A test_data:すいか><id:7 name:B test_data:めろん><id:5 name:C test_data:すいか>
だけをこの順番で取得したい
発生している問題・分からないこと
TestData.objects.order_by("-id", "name")distinct("name")
もしくは
TestData.objects.order_by("name", "-id")distinct("name").order_by("-id")
するようなイメージで取得したいのですが、distinct()と.order_by()の関係性の制約があり上手くいきません。
該当のソースコード
特になし
試したこと・調べたこと
- teratailやGoogle等で検索した
- ソースコードを自分なりに変更した
- 知人に聞いた
- その他
上記の詳細・結果
django.db.utils.ProgrammingError: SELECT DISTINCT ON expressions must match initial ORDER BY expressions
LINE 1: SELECT DISTINCT ON ("〇〇"."〇〇"...
のようなエラーが返ってくる
補足
特になし

バッドをするには、ログインかつ
こちらの条件を満たす必要があります。