Mam tabeli użytkowników oraz tabelę rzeczy mają one na liście -wybrać tylko wtedy, gdy pusty
pokazania wszystkich użytkowników, którzy pozycje na liście mogę połączyć dwie tabele users
i user_lists
na user_id
np.
select u.emailaddr, u.name from users u
join user_lists uw where u.user_id=uw.user_id
group by u.name
PYTANIE: Jak mogę wyświetlić wszystkich użytkowników, którzy NIE mają pozycji na liście - aby powiedzieć to inaczej, muszę listę użytkowników, którzy nie mają wpisy w user_lists stołowych
próbowałem tego, ale zabrakło w nieskończoność
select u.emailaddr, u.name from users u
join user_lists uw where u.user_id<>uw.user_id
group by u.name
Niesamowite, wielkie dzięki - czy są jakieś preferencje? jest mniej głodny zasobów niż inne? –
@DarrenSweeney - zależy to od twoich danych i ustawień indeksów w twoich tabelach, ale jest trochę rzeczy do zapamiętania; 'JOIN' jest bezpieczniejsze niż predykat' IN' z wartościami 'NULL', jeśli istnieje jakikolwiek" user_id "w drugiej tabeli' user_lists' z wartościami 'NULL', twoje zapytanie nie zwróci niczego. –
Wielkie dzięki ponownie –