Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 17 Pomógł: 0 Dołączył: 29.07.2014 Ostrzeżenie: (0%)
|
Witam. By wyjaśnić problem przedstawię wymyśloną sytuację jako przykład.
Mam np. tabelę "rtv" z kolumnami ID, nazwa, powiązanie z wierszami: Kod ID nazwa powiazanie -------------------------------------- 1 Komputer PC NULL 2 Wieża stereo NULL 3 Smartphone NULL 4 Karta graficzna 1 5 Słuchawka bluetooth 3 6 Telewizor NULL 7 Dysk twardy 1 8 Kabel SATA do dysku 7 I teraz chcę sprawdzić sprzęty powiązane z ID 1 czyli z "Komputer PC". W takim wypadku zrobiłbym zapytanie
To zwróciło by mi: Kod 4 Karta graficzna 1 7 Dysk twardy 1 Ja jednak chciałbym sprawdzić poziom niżej, a więc by zwróciło by mi również sprzęty powiązane z tymi powiązanymi, czyli "Kabel SATA" który jest powiązany z "Dysk Twardy" który jest powiązany z wyszukiwanym "Komputer PC". Wystarczy mi tylko ten jeden "poziom" niżej, nie chcę szukać powiązań w nieskończoność. Dla uproszczenia powiązanie zawiera tylko jeden numer, więc słuchawki nie mogą np. należeć do Smartphona i Komputera jednocześnie. Powinno zwrócić: Kod 4 Karta graficzna 1 7 Dysk twardy 1 8 Kabel SATA do dysku 7 Da się to zrobić jakoś sensownie na jednym zapytaniu? Myślałem aby pobrać pierwsze powiązania tym zapytaniem które podałem, a potem w pętlę PHP dać te same zapytania dla tych powiązanych. To jednak się chyba nie sprawdzi bo po pierwsze zwiększy to mocno liczbę zapytań, a co ważniejsze nie będę mógł zrobić paginacji itd. Jakieś rady? Ten post edytował nyfko 8.05.2016, 13:20:57 |
|
|
|
nyfko [MySQL] Pobranie powiązanych rekordów i ich powiązanych 8.05.2016, 13:15:09
com zrobić z tego relacyjna bazę danych a nie takiego ... 8.05.2016, 13:20:42 
nyfko Cytat(com @ 8.05.2016, 13:20:42 ) zro... 8.05.2016, 13:25:21
com no ale nie uzyskasz odpowiedzi jak przedstawiasz z... 8.05.2016, 13:30:42 
nyfko Cytat(com @ 8.05.2016, 14:30:42 ) no ... 8.05.2016, 13:45:12
CuteOne Dać się da ale wymaga, to zmiany struktury bazy d... 8.05.2016, 13:35:04
com no jeśli masz tak zbudowaną tabele jak przedstawił... 8.05.2016, 13:52:44
nyfko Ok to zapytam inaczej.
Czy da się zrobić tak by w... 8.05.2016, 13:56:15
com owszem da sie zrobić podzapytanie ale czasem lepie... 8.05.2016, 14:00:33 ![]() ![]() |
|
Aktualny czas: 23.12.2025 - 22:43 |