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%)
|
nie wiem, czy mysql też to ma, ale w postgresie jest coś takiego jak anonimowy widok (chyba tak to się nazywa). I robi się to tak:
Kod SELECT * FROM ( SELECT * FROM tabela WHERE cos = cos ) AS temp WHERE cos = cos Czyli u Ciebie byłobyKod SELECT owoc FROM (SELECT * FROM owoce WHERE cecha = 'smak' AND wartosc='kwasny') AS smaki, (SELECT * FROM owoce WHERE cecha='kolor' AND wartosc='zolty') AS kolory WHERE smaki.owoc=kolory.owoc Powinno działać, ale nie ręcze (nie sprawdzałem) i nie wiem jak będzie s MySQL'em (może ma taką podobną możliwość).
@scanner: Jesteś pewien, że to działa bo mi się nie wydaje... :/ |
|
|
|
yoyo żółty kwaśny owoc... 28.05.2004, 12:07:11
scanner SELECT owoc FROM tabela WHERE (cecha = 'kolor' AND... 28.05.2004, 12:14:24
lukaswoj Wg wiedzy, która posiadam powiedziałbym, że Jabol ... 28.05.2004, 12:50:36
yoyo CytatWg wiedzy, która posiadam powiedziałbym, że J... 28.05.2004, 12:57:08
lukaswoj Oops
Pospieszyłem się, troche, rzeczywiście.
Zwra... 28.05.2004, 14:22:05
FiDO Mozna tez uniwersalniej, dla dowolnej ilosci cech:... 28.05.2004, 15:31:28
Jabol a widziecie... mówiłem (że tamto nie działa). I ni... 28.05.2004, 20:28:52
yoyo Jabol, faktycznie widzę teraz o co chodzi, ale to ... 28.05.2004, 23:02:14
cboot CytatJabol, faktycznie widzę teraz o co chodzi, al... 29.05.2004, 12:21:10
Jabol no tak, w sumie racja, to są podzapytania. W tym j... 29.05.2004, 13:05:16 ![]() ![]() |
|
Aktualny czas: 28.12.2025 - 10:56 |