![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 2 Pomógł: 0 Dołączył: 11.05.2005 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
mam trzy tabele: produkt - [id_produkt].[nazwa_produktu] kategoria - [id_kategoria].[nazwa_kategorii] produkt_has_kategoria - [id_produkt_has_kategoria].[produkt_id_produkt] w realcji n:m (każdy produkt może należeć do wielu kategorii) Usuwając kategorię produktów chcę usunąć produkty, które należały tylko do tej kategorii tak, aby w tabeli "produkt" nie pozostały rekordy osierocone. Chciałbym zrobić to w jednym zapytaniu korzystając z podzapytań. To zapytanie: DELETE FROM produkt WHERE id_produkt IN ( SELECT DISTINCT produkt_id_produkt FROM produkt_has_kategoria WHERE kategoria_id_kategoria = id_kategoria ) AND id_produkt NOT IN ( SELECT produkt_id_produkt, count( * ) AS ile FROM produkt_has_kategoria GROUP BY produkt_id_produkt HAVING ile >=2 ) generuje błąd: #1241 - Operand should contain 1 column(s) Proszę o pomoc w poprawnym sformułowaniu tego zapytania. Korzystam z MySQL 4.1.9 pozdrawiam Ten post edytował BC_Rich 11.05.2005, 19:47:03 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 14.10.2025 - 12:16 |