![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 131 Pomógł: 0 Dołączył: 28.08.2006 Ostrzeżenie: (0%) ![]() ![]() |
Witajcie.
Załóżmy, że mam 3 tabele: photos ( id,name) tags (id,name) i photo_tags (photo_id,tag_id) photos i tag są połączone relacją wiele do wielu. Teraz 2 pytania: 1. załóżmy, że chcę pobrać wszystkie zdjęcia, które są otagowane (jednocześnie) przez tagi foo i bar. Jak to wykonać za pomocą jednego zapytania?(i czy lepiej to mieć w jednym zapytaniu, czy może lepiej to rozbić na kilka selectów i przemielić w php) ? 2. Załóżmy, że mam zdjęcie o id= 5. Chciałbym pobrać zdjęcie, które ma podobne* tagi do tego zdjęcia *tak naprawdę, to sam nie do końca jestem przekonany co oznacza podobne - czy dokładnie takie same, czy np. 80% tagów takich samych - tu bym prosił o radę, w jaki sposób uznać, czy zdjęcie jest podobne czy nie.... Z góry dzięki za odpowiedzi |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 131 Pomógł: 0 Dołączył: 28.08.2006 Ostrzeżenie: (0%) ![]() ![]() |
...prosiłbym bardzo o pomoc przy tym joinie. mam takie zapytanie:
i otrzymuję w wyniku coś takiego: Kod photo_id name tag tag_id 7 asd.jpeg foo 5 8 dsa.jpeg foo 5 8 dsa.jpeg bar 6 9 ttt.jpeg bar 6 ogólnie wiem, że ten IN() nie ma sensu w moim przypadku, użyłem go tylko, żeby pokazać jak wyglądają dane w mojej bazie. chciałbym pobrać zdjęcie, które ma tagi foo i bar - czyli w moim przypadku dsa.jpeg (i tylko te) z góry dzięki za wszelką pomoc (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) |
|
|
![]() ![]() |
![]() |
Aktualny czas: 17.10.2025 - 21:33 |