Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Django Query di mana satu bidang adalah duplikat dan yang lain berbeda

Anda dapat bekerja dengan subquery di sini, tetapi menurut saya itu tidak terlalu berpengaruh dalam hal kinerja:

from django.db.models import Exists, OuterRef, Q

UserNames.objects.filter(
    Exists(UserNames.objects.filter(
        ~Q(user_id=OuterRef('user_id')),
        first_name=OuterRef('first_name')
    ))
)

atau sebelum :

from django.db.models import Exists, OuterRef, Q

UserNames.objects.annotate(
    has_other=Exists(UserNames.objects.filter(
        ~Q(user_id=OuterRef('user_id')),
        first_name=OuterRef('first_name')
    ))
).filter(has_other=True)

Dengan demikian, kami mempertahankan UserNames objek yang ada UserNames objek dengan first_name yang sama , dan dengan user_id yang berbeda .




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Menggunakan Hitungan untuk menemukan jumlah kemunculan

  2. pilih nilai yang serupa dari database mysql

  3. Permintaan MySQL - mengidentifikasi data menggunakan nama URL di mana data diatur ke dalam hierarki

  4. Apakah ada cara untuk meneruskan kata sandi pengguna DB ke alat baris perintah mysqladmin?

  5. Bisakah saya menyimpan gambar di MySQL