![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 29 Pomógł: 0 Dołączył: 20.12.2003 Skąd: Bielsko-Biała Ostrzeżenie: (0%) ![]() ![]() |
mam taką przykładową tabelę:
Kod -----------------------------------------
| owoc | cecha | wartosc | ----------------------------------------- | cytryna | kolor | żółty | | cytryna | smak | kwaśny | | pomarańcza | kolor | pomarańczowy | | pomarańcza | smak | słodki | | banan | kolor | żółty | | banan | smak | słodki | | kiwi | kolor | zielony | | kiwi | smak | kwaśny | ----------------------------------------- i przykładowo chciałbym znaleźć wszystkie żółte i zarazem kwaśne owoce (czyli w tym przypadku wynikiem powinna być cytryna) czy istnieje możliwość, aby wyszukać dany owoc za jednym zapytaniem, mam mysql. Jeśli nie, to jak najlepiej zoptymalizować takie zapytanie. Czemu wybrałem takie rozwiązanie? cechy nie są stałymi wartościami, a nie chcę też aby skrypt modyfikował strukturę tabeli. ps: sorry, za tytuł topicu, ale wie wiedziałem jak to nazwać... |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Przyjaciele php.pl Postów: 1 467 Pomógł: 13 Dołączył: 22.02.2003 Ostrzeżenie: (0%) ![]() ![]() |
a widziecie... mówiłem (że tamto nie działa). I nie użyłem subzapytań, ale anonimowych widoków (to jest coś innego, żeby to zrozumieć musielibyście wiedzieć co to jest widok. A anonimowy to taki, który deklaruje się w samym zapytaniu).
Natomiast FiDO zrobił dokładnie to samo co ja, ale w trozskę inny sposób (połączył obydwie tabele, tak, że teraz jeden rekord ma 5 pól (w tym dwie różne cechy ich wartość i nazwe owocu) i potem zrobił having). U mnie natomiast było połączenie dwóch przefiltrowanych (już zostały tylko żółte albo kwaśne) tabel (a raczej widoków) z których jedna zawiera kolory a druga smaki i znalezienie owoców, które spęłniają obie te warunki. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 15.10.2025 - 01:30 |