sql >> Database >  >> RDS >> Mysql

MySQL laat rijen weg die een gebruiker al heeft gezien bij het controleren van een geziene tabel

U moet de beperking op uuid_user . verplaatsen van de WHERE clausule naar de ON clausule van de join:

SELECT * 
FROM maintable m 
LEFT JOIN seentable s 
    ON m.uuid = s.uuid AND s.uuid_user = '[user]'
WHERE s.uuid IS NULL;

Het bovenstaande is de logica die u hier wilt. Nu vindt een succesvolle samenvoeging tussen records uit de twee tabellen plaats wanneer de uuid waarden komen overeen met en wanneer de uuid_user waarde uit de weergegeven tabel komt overeen met een bepaalde waarde. Merk op dat de uuid_user waarde niet overeenkomen met een record, zou het niet worden weggefilterd, wat zal gebeuren met uw huidige zoekopdracht.




  1. Inzicht in 'datetime2' opslaggrootte in SQL Server

  2. Kan php-mysqli-extensie niet installeren op Centos

  3. Wat maakt een SQL-statement sargable?

  4. Hoe maak je een ID aan met AUTO_INCREMENT op Oracle?