sql >> Databasteknik >  >> RDS >> Mysql

Django Query där ett fält är dubblett och ett annat är annorlunda

Du kan arbeta med en underfråga här, men det kommer inte att spela så stor roll vad gäller prestanda tror jag:

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

eller före :

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)

Vi behåller alltså UserNames objekt för vilka det finns ett UserNames objekt med samma first_name , och med ett annat user_id .




  1. Finns det MySQL som motsvarar Oracles TIMESTAMP WITH TIME ZONE?

  2. Hur man lägger till en separator till en sammanfogad sträng i SQL Server – CONCAT_WS()

  3. MySQL-problem - KOMPLETT serveröverskridande! Vänligen ge råd

  4. SQL Server till MySQL dataöverföring