Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [MySQL] DELETE z dwóch tabel
bliitz
post 30.04.2009, 13:46:44
Post #1





Grupa: Zarejestrowani
Postów: 155
Pomógł: 12
Dołączył: 5.04.2008

Ostrzeżenie: (0%)
-----


Witam

problem jest następujący: są 2 tabele `galeria` i `photo`, czy można za pomocą jednego zapytania usunąć dane z obu tabel przy dwóch możliwych wariantach:
w tabeli `galeria` znajduje się wpis o danym id natomiast w tabeli `photo` nie występuje.

Struktura tabel:

galeria photo
-------- ---------
id id
nazwa galeria_id
data_utworzenia nazwa_zdj

próbowałem:
  1. DELETE `galeria`, `photo` FROM `galeria` INNER JOIN `photo` ON galeria.id=photo.galeria_id
  2. WHERE galeria.id='55'

Jednak w momencie gdy nie dodano jeszcze zdjęcia do galerii i w tabeli `photo` nie ma wpisu o id odpowiadającym id w `galeria`, zapytanie nie usuwa rekordu z tabeli `galeria`.
Ktoś podpowie jak to można rozwiązać?


--------------------
Go to the top of the page
+Quote Post
melkorm
post 30.04.2009, 15:21:18
Post #2





Grupa: Zarejestrowani
Postów: 1 366
Pomógł: 261
Dołączył: 23.09.2008
Skąd: Bydgoszcz

Ostrzeżenie: (0%)
-----


Jeżeli chcesz usunąć galerie i ewentulanie zdjęcia (jeżeli są) to użyj LEFT JOIN'a.

Bo przy INNER gdy nie ma zdjęć zwrócony zostanie Tobie pusty wynik, a przy LEFT w polach zdjęć będą NULL'e.

Ten post edytował melkorm 30.04.2009, 15:22:04


--------------------
Go to the top of the page
+Quote Post
bliitz
post 30.04.2009, 15:26:50
Post #3





Grupa: Zarejestrowani
Postów: 155
Pomógł: 12
Dołączył: 5.04.2008

Ostrzeżenie: (0%)
-----


dokładnie, właśnie miałem napisać, że już rozwiązałem sobie problem ale że mnie uprzedziłeś... winksmiley.jpg


--------------------
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 07:53