![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 94 Pomógł: 1 Dołączył: 16.12.2012 Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Mam sobie taki problem. Otóż potrzebuję rozwiązania, które pozwoli mi na wcielenie elementów jednej tablicy do drugiej. Chodzi o zredukowanie ilości zapytań do bazy danych oraz pętel. Postaram się przedstawić problem najprościej jak mogę - na przykładzie np. newsów i komentarzy do nich. Pobieram z bazy wszystkie newsy i otrzymuję ich identyfikatory i rzecz jasna jakąś tam treść. Następnie pobieram z bazy komentarze do newsów i otrzymuję ich identyfikator główny oraz identyfikator odnoszący się do newsa. I teraz: wykonałem 2 zapytania do bazy posiadam 2 listy: jedną z newsami a drugą z komentarzami. Np.: A chciałbym połączyć to tak, aby wyglądało to w ten sposób:
Zaiste można pobrać newsy a potem w pętli pobierać do nich komentarze ale rozwiązanie to nie jest zbyt optymalne. Można także w pętli odtworzyć tablicę z newsami i potem przeszukiwać za każdym razem tablicę z komentarzami, coś w tym rodzaju:
Ale to rozwiązanie nie wydaje mi się też zbyt optymalne. Wydaje mi się, że próbuję wynajdywać koło na nowo. Istnieje na to jakiś prosty sposób? Jakaś gotowa funkcja tablicy? Coś w rodzaju połączenia obu tablic przy pomocy klucza, który wiązałby obie tablice w jakiś sposób. Najlepiej, jakby dało się to załatwić już na poziomie pobierania danych z bazy. Ten post edytował Mephis 5.02.2016, 15:08:49 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 94 Pomógł: 1 Dołączył: 16.12.2012 Ostrzeżenie: (0%) ![]() ![]() |
Póki co potrzebowałem samego sposobu na wypełnienie "newsów" komentarzami. Ostatecznie pobierany byłby tylko pewien zakres elementów.
Sposób przedstawiony pod tym linkiem jest raczej dobry, gdyż ogranicza ilość zapytań do jednego, ale żeby poprawnie wyświetlić zakres "newsów", musiałbym w zapytaniu dodać warunek z podzapytaniem
Czy takie rozwiązanie w tym przypadku jest dobre? Ten post edytował Mephis 5.02.2016, 16:23:55 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 15.10.2025 - 15:57 |