Mysql
 sql >> Baza danych >  >> RDS >> Mysql

MySQL pomija wiersze, które użytkownik już widział podczas sprawdzania widzianej tabeli

Musisz przenieść ograniczenie na uuid_user z WHERE klauzula ON klauzula przyłączenia:

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

Powyższe jest logiką, której chcesz tutaj. Teraz udane połączenie między rekordami z dwóch tabel następuje zawsze, gdy uuid wartości pasują do i kiedy uuid_user wartość z widzianej tabeli pasuje do jakiejś wartości. Zauważ, że powinien uuid_user wartość nie pasuje do dowolnego rekordu, nie zostanie odfiltrowany, co stanie się z bieżącym zapytaniem.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Wiele nie istnieje w MYSQL, aby sprawdzić liczbę wierszy

  2. Zapytanie SQL sprawdzające, czy nazwa zaczyna się i kończy na samogłoskę

  3. MySQL Greatest N Results with Join Tables

  4. Używanie LAST_INSERT_ID() we wstawianiu wielowierszowym

  5. SQL Wstaw do tabeli nowe wiersze dla każdego pola w tej samej tabeli