![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 15 Pomógł: 0 Dołączył: 23.02.2009 Skąd: Jelenia Góra Ostrzeżenie: (0%) ![]() ![]() |
Witam,
mam straszny problem z jak mi sie wydaje banalnym zapytaniem. Przypuśćmy, że w bazie są dwie tabele: ca_object - object_id ca_object_value - value_id - object_id - value tabela ca_object jest z tabelą ca_object_value w relacji 1:n, w tabeli ca_object_value są dane: value_id | object_id | value 1 | 12 | zielony 2 | 12 | czerwony 3 | 12 | czarny i teraz moje pytanie: w jaki sposób mogę pobrać wszystkie obiekty (z tabeli ca_object ), które są i zielone i czarne? Bardzo proszę o pomoc Ten post edytował damiankopiec 3.12.2009, 10:32:24 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Moderatorzy Postów: 6 072 Pomógł: 861 Dołączył: 10.12.2003 Skąd: Dąbrowa Górnicza ![]() |
Nie podam Ci gotowego rozwiązania ale naprowadzę: musisz użyć grupowania (GROUP BY), warunku dla koloru (WHERE kolor='zielony' OR kolor = 'czarny'), potem (i to najważniejsze) HAVING COUNT(*) = 2. Użycie HAVING wymusi dopasowanie dokładnie obu tych kolorów dla danego obiektu.
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 295 Pomógł: 7 Dołączył: 26.03.2004 Skąd: Opole Ostrzeżenie: (0%) ![]() ![]() |
To nic trudnego i można to zrobić na kilka sposobów.
Np stosując podzapytania:
albo wykorzystując operacje na agregacie:
Pozdrawiam (IMG:style_emoticons/default/winksmiley.jpg) |
|
|
![]() ![]() |
![]() |
Aktualny czas: 24.08.2025 - 16:58 |