Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Wiele różnych tablic jedno zapytanie.
ZuyPan
post
Post #1





Grupa: Zarejestrowani
Postów: 116
Pomógł: 4
Dołączył: 4.02.2010

Ostrzeżenie: (0%)
-----


Witam.
Od jakiegoś czasu realizuję pewien projekt. Problemów jest sporo ponieważ baza danych jest (to moje zdanie) źle zaprojektowana. Końcowym produktem ma być LogViewer wyświetlający logi z sześciu różnych tabel z filtrami i stronicowaniem. Wszystko było by dużo prostrze gdyby logi były w jednej tabeli a są w aż sześciu i to o różnych strukturach. Problem jest konkretnie ze stronicowaniem. W jaki sposób pobrać wszystko z tych tablic aby móc zrobić LIMIT w zapytaniu (od tego do tego rekordu, w zależności od aktualnej strony). UNION nie zadziała ze względu na różne struktury, o joinach można zapomnieć ponieważ nie ma żadnych relacji a pole klucz (ai) posiada tylko jedna z tych tabel. Pomysły?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Niktoś
post
Post #2





Grupa: Zarejestrowani
Postów: 1 195
Pomógł: 109
Dołączył: 3.11.2011

Ostrzeżenie: (10%)
X----


Cytat
Problemów jest sporo ponieważ baza danych jest (to moje zdanie) źle zaprojektowana.

No to fakt, relacyjna baza bez relacji (IMG:style_emoticons/default/baaasmiley.gif)

Możesz spróbować pokombinować z cross join:
http://www.roseindia.net/sql/sqljoin/mysql-cross-join.shtml
http://stackoverflow.com/questions/8473625...ut-relationship

Najlepiej przeprojektować bazę danych , brak indexów-ma znaczenie przy optymalizacji i szybkości wykonywania się zapytań-będzie działać znacznie wolniej niż w przypadku tabel indeksowanych.Brak wiązań danych ,będzie utrudniało wyciąganiu odpowiednich danych-będziesz musiał budować zawiłe kwerendy, które będą się także wolniej wykonywały.

Ten post edytował Niktoś 28.07.2012, 17:10:22
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 24.12.2025 - 19:16