Thread View: pl.comp.lang.php
5 messages
5 total messages
Started by gurbin
Fri, 24 Aug 2001 12:58
maly problem
Author: gurbin
Date: Fri, 24 Aug 2001 12:58
Date: Fri, 24 Aug 2001 12:58
25 lines
1817 bytes
1817 bytes
witam! mam oto taka mniej wiecej baze (mysql): kategorie-> | id_kat| kategoria| slowa -> |id_slowa|slowo| foty-> |id_foty|fota| autorzy->|id_autor|autor| link ->|id_kat|id_slowa|id_foty|id_autor| wiersz w ostatniej tabeli jest unikalny... zadaniem tej bazy jest odszukanie fotografii na podstawie slow kluczowych. banalnie proste (oczywiscie php) - problem pojawil sie przy zapytaniu 2 slow kluczowych (and). rozwiazalem to po przez stworzenie tymczasowej tabeli (poniewaz mysql nie obsluguje podzapytan). teraz system szukania sie zmienia....po wykonaniu przeszukiwania po jednym slowie kluczowym trzeba umowzliwic uzytkownikowi przeszukanie wynikow pod wzgledem jakiegos innego slowa. nie mam pojecia jak to mam zrobic? tworzenie tabel tymczasowych nie ma sensu .. trzymanie w sesji wynikow tez jest nie ekonomiczne ze wzgledu na ilosc wynikow (moze byc nawet 5 000) moze ktos rzuci na to swiezym okiem? jakies pomysly? z gory dzwieczny jestem;) Robert
Re: maly problem
Author: Michal Sajdak
Date: Fri, 24 Aug 2001 14:01
Date: Fri, 24 Aug 2001 14:01
24 lines
1649 bytes
1649 bytes
>witam! witam >mam oto taka mniej wiecej baze (mysql): >kategorie-> | id_kat| kategoria| >slowa -> |id_slowa|slowo| >foty-> |id_foty|fota| >autorzy->|id_autor|autor| > >link ->|id_kat|id_slowa|id_foty|id_autor| >wiersz w ostatniej tabeli jest unikalny... >slowa. nie mam pojecia jak to mam zrobic? tworzenie tabel tymczasowych nie >ma sensu .. trzymanie w sesji wynikow tez jest nie ekonomiczne ze wzgledu na >ilosc wynikow (moze byc nawet 5 000) >moze ktos rzuci na to swiezym okiem? >jakies pomysly? na pierwszy rzut oka do glowy przychodzi mi taki hint: zapytanie z OR, grupowanie po id_foty, sprawdzanie COUNT pozdrawiam. -- Michal Sajdak --> xterm --> LinuxNews Team. GPG: http://urtica.linuxnews.pl/~xterm/key/ [ http://hardware.linuxnews.pl/ ] - [ http://linuxnews.pl/ ]
Re: maly problem
Author: gurbin
Date: Fri, 24 Aug 2001 14:16
Date: Fri, 24 Aug 2001 14:16
30 lines
2246 bytes
2246 bytes
Użytkownik Michal Sajdak <sajdakm@demon.viii-lo.krakow.pl> w wiadomości do grup dyskusyjnych napisał:slrn9ocnu5.1bqh.sajdakm@demon.viii-lo.krakow.pl... > >witam! > witam [ciach] > na pierwszy rzut oka do glowy przychodzi mi taki hint: > zapytanie z OR, grupowanie po id_foty, sprawdzanie COUNT widocznie zle sie wyrazilem -> ten hint juz zastosowalem w szukaniu 2 slow create temporary table copy select cos_tam, count(foty.id_foty) as licznik from foty,slowa,link,autorzy where 'warunki' and (slowo='$slowo1' or slowa.slowo='$slowo2') and 'warunki' group by foty.id_foty; chodzi o to ze jesli szukam jedno slowo kluczowe (nie potrzebne create temporary...) to zeby udostepnic uzytkownikowi mozliwosc przeszukania wynikow innym slowem kluczowym...i moze sobie tak zawezac je az mu sie nie znudzi - albo baza strzeli ;) chyba bede musial pamietac w sesji slowa submitowane.... > pozdrawiam. > > -- > Michal Sajdak --> xterm --> LinuxNews Team. > GPG: http://urtica.linuxnews.pl/~xterm/key/ > [ http://hardware.linuxnews.pl/ ] - [ http://linuxnews.pl/ ] w kazdym razie dzieki rowniez pozdrawiam Robert
Re: maly problem
Author: Michal Sajdak
Date: Sat, 25 Aug 2001 08:38
Date: Sat, 25 Aug 2001 08:38
17 lines
1621 bytes
1621 bytes
>widocznie zle sie wyrazilem -> ten hint juz zastosowalem w szukaniu 2 slow >create temporary table copy select cos_tam, count(foty.id_foty) as licznik >from foty,slowa,link,autorzy where 'warunki' and (slowo='$slowo1' or >slowa.slowo='$slowo2') and 'warunki' group by foty.id_foty; chodzilo mi raczej o cos w stylu: test=# SELECT idf FROM link, slowa WHERE link.ids=slowa.id AND (slowo='a' OR slowo='b') GROUP BY idf HAVING COUNT(*)=2; powinno dac idf'y dla ktorym odpowiadaja slowa a i b - moga tez byc inne. pozdrawiam. -- Michal Sajdak --> xterm --> LinuxNews Team. GPG: http://urtica.linuxnews.pl/~xterm/key/ [ http://hardware.linuxnews.pl/ ] - [ http://linuxnews.pl/ ]
Re: maly problem
Author: gurbin
Date: Sat, 25 Aug 2001 08:50
Date: Sat, 25 Aug 2001 08:50
31 lines
2302 bytes
2302 bytes
Użytkownik Michal Sajdak <sajdakm@demon.viii-lo.krakow.pl> w wiadomości do grup dyskusyjnych napisał:slrn9oepcd.1s26.sajdakm@demon.viii-lo.krakow.pl... > >widocznie zle sie wyrazilem -> ten hint juz zastosowalem w szukaniu 2 slow > >create temporary table copy select cos_tam, count(foty.id_foty) as licznik > >from foty,slowa,link,autorzy where 'warunki' and (slowo='$slowo1' or > >slowa.slowo='$slowo2') and 'warunki' group by foty.id_foty; > chodzilo mi raczej o cos w stylu: > > test=# SELECT idf FROM link, slowa WHERE link.ids=slowa.id AND (slowo='a' > OR slowo='b') GROUP BY idf HAVING COUNT(*)=2; > > powinno dac idf'y dla ktorym odpowiadaja slowa a i b - moga tez byc inne. > > pozdrawiam. > > -- > Michal Sajdak --> xterm --> LinuxNews Team. > GPG: http://urtica.linuxnews.pl/~xterm/key/ > [ http://hardware.linuxnews.pl/ ] - [ http://linuxnews.pl/ ] dzieki wielkie mam rozwiazanie -> wystarczy trzymac w sesji poszczegolne zadane slowa i zmieniac ilosc or w zapytaniu (slowo = 'a' or .... ) i zmieniac having count na ilosc slow jeszcze raz dzieki ;) pozdrawiam Robert
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads