Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Truy vấn Django trong đó một trường trùng lặp và một trường khác

Bạn có thể làm việc với một truy vấn con ở đây, nhưng tôi nghĩ nó sẽ không quan trọng lắm về mặt hiệu suất:

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')
    ))
)

hoặc trước :

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)

Do đó, chúng tôi giữ lại UserNames các đối tượng tồn tại UserNames đối tượng có cùng first_name và với một user_id khác .




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Thiết kế Cơ sở dữ liệu:Điểm xác định các khóa ngoại là gì?

  2. Máy chủ MySQL độc lập

  3. Cơ sở dữ liệu thuộc tính MySQL

  4. Cách xáo trộn một cột trong MySql

  5. MySQL:Làm cách nào để sử dụng dấu phân cách trong trình kích hoạt?