Celem tego samouczka jest pomoc w zrozumieniu, jak korzystać z klauzuli usuwania wraz z klauzulą łączenia, aby usunąć dane. Jeśli jesteś nowy w MySQL, rozważ nasze inne samouczki, takie jak samouczki dołączające i upuszczone.
Zacznijmy.
Podstawowe użycie: Usuń z wewnętrznym połączeniem
Pierwsza metoda usunięcia, którą omówimy, to sposób korzystania z klauzuli MySQL Usuń wewnątrz instrukcji łączenia wewnętrznego, aby usunąć dane z wierszy pasujących do innej tabeli.
Ogólna składnia do wdrożenia takiego zapytania pokazano poniżej:
Usuń TBL1, TBL2 z TBL1 WEWNIJ WYŁĄCZ TBL2 na TBL1.col = tbl2.col gdzie [warunek];Pozwól, że zapewnię cię, że jest to łatwiejsze niż wygląda. Pozwól mi wyjaśnić:
Zaczynamy od określenia tabel, z których chcemy usunąć dane. Tabele są określone między usuwaniem a klauzulą.
W drugiej części określamy warunek pasujących wierszy w tabelach ustawionych. Na przykład:
TBL1.col = tbl2.przełęczNa koniec ustawiamy warunki, które określają wiersze w określonych tabelach, które mają zostać usunięte.
Przykładowy przypadek użycia
Pozwól mi użyć przykładu, aby zilustrować, w jaki sposób możemy użyć klauzuli usuwania i łączenia wewnętrznego, aby usunąć wiersze z wielu tabel. Rozważ pytania poniżej:
Stwórz społeczeństwo schematu;Po uzyskaniu takich danych możemy zilustrować, jak używać Delete z wewnętrznym połączeniem, jak pokazano w pytaniu poniżej:
Usuń społeczeństwo.użytkownicy, społeczeństwo.kontakty ze społeczeństwa.Użytkownicy Wewnętrzne łączą kontakty na user_id = home_id, gdzie user_id = 3;Powyższe zapytanie wyświetli wynik, jak pokazano poniżej:
Dwa rzędy dotknięte w 7 ms, co wskazuje, że dwa rzędy zostały usunięte.
Usuń z lewym dołączeniem
Drugą metodą Delete, którą omówimy, jest użycie lewego połączenia. Ogólna składnia dla tego typu usuwania jest jak pokazano poniżej:
Usuń tbl1 z tbl1 lewy dołącz TBL2 na tbl1.col = tbl2.Col, gdzie tble.Col jest NULL;W celu usunięcia z lewicowym połączeniem określamy tylko jedno tabelę podobną do wewnętrznego połączenia, w którym określiliśmy dwie tabele.
Rozważ całe zapytanie poniżej:
Używać społeczeństwa;Po wykonaniu powyższego zapytania użytkownik, którego adres jest zerowy po usunięciu połączenia, a wynik wyjściowy jest pokazany poniżej:
Wniosek
W tym samouczku omówiliśmy, jak korzystać z MySQL Usuń z instrukcjami łączenia, aby usunąć dane z wielu tabel.