![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 492 Pomógł: 33 Dołączył: 16.08.2007 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Moja struktura bazy jawi się tak: tabela X (id, type (pole typu ENUM o możliwych wartościach t lub n lub g), nieistotna_kolumna1, nieistotna_kolumna2...) tabela T (id, jakieś tam kolumny) tabela N (id, jakieś tam kolumny) tabela G (id, jakieś tam kolumny) Tworzę zapytanie SELECT, które ma pobierac dane z odpowiedniej tabeli T lub N lub G, w zależności od wartosci type dla danego id. Da się to zrobić jednym zapytaniem poprzez łączenie tabel w jakiś sposób? Zupełnie nie mam pomysłu. Oczywiście, nie musi być jednym zapytaniem - ale możliwie najwydajniej. Żeby nie trzeba było pobierać wartości type do php i w zależności od tej wartości robić trzech różnych zapytań... No, chyba że nie da się inaczej. Proszę o pomoc i pozdrawiam. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 78 Pomógł: 1 Dołączył: 16.08.2006 Skąd: szy-ły Ostrzeżenie: (0%) ![]() ![]() |
szczerze mówiąc tabele w bazie wydają mi sie niestety - nie optymalne. optymalnośc chyba zawsze polega na jaknajlepszym zaprojektowaniu bazy, wiesz jak ja bym zrobił? zostawił tabele w której są wybrane przedmioty przez usera, i zrobił 2 table - zamiast tych 3 (T,N,G).
mianowicie tabela PRODUKTY | id_prod | id_kategorii | opis | cena | informacje_dodaktowe | inne_kolumny | przykładowy wpis w tej tabeli wyglada tak (1,1,jakis opis, 50zł,xxx,yyy) i 2. tabela KATEGORIE | id_kategorii | nazwa_kategorii | w tej tabeli maiłbys dane w stylu (1,książka), (2,plyty_dvd) zachowujesz rozszerzalnosc - bo jak rozumiem teraz dodajesz czasopisma - i musisz dodac nową tabele do tabel T,N,G, i tam wrzucic czasopisma - co jest słabe, bo od ilosci kategorii bedzie zależała ilośc tabel? prowadzac wiekszy sklep mogłbys miec kilkadziesiat tabel a w kazdej po 10 wpisów. a tak - dodajesz nową kategorie do tabeli - kategorie i spoko.do koszyka dodajesz produkty poprzez id_produktu, a nazwe kategorii wyciagasz poprzez takie zapytanie.
nie ma w tym nic złego, że miałbyś nawet 100tysiecy produktów z różnych kategorii w jednej tabeli. jesli to nie pomogło - daj znac, cos innego wymyślimy (IMG:http://forum.php.pl/style_emoticons/default/snitch.gif) |
|
|
![]() ![]() |
![]() |
Aktualny czas: 8.10.2025 - 00:48 |