Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [mysql] Projekt bazy
jachu151
post
Post #1





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 26.02.2007

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


Witam serdecznie. Mam pytanie do osób doświadczonych w projektowaniu baz danych.

Problem, jak optymalnie zrealizować taki oto system:

- baza ogłoszeń nieruchomości
- cechy do oferty

Różne typy ogłoszeń mieszkania, domy, itd. każdy tych będzie zawierał trochę cech wspólnych trochę różnych. Domyślnie dużo cech.


Czy optymalnym rozwiązaniem będzie stworzenie tabeli:

offer - ogłoszenia, zawierające ID, opis, daty dodania modyfikacji itd
feature_date
feature_text
feature_int ...

osobne tabele dla różnych cech w zależności jakiego typu one będą.

Wyszukiwanie będzie zawierać dużo LEFT JOINOW, jeśli będę chciał znaleźć ofertę o 10 cechach to jest 10 joinów, da się to zrobić optymalniej? Z mniejszą zależnością od ilości wyszukiwanych cech?



Pozdrawiam
jachu
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
jachu151
post
Post #2





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 26.02.2007

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


Cytat
normalizacja przyczyna spadku wydajnosci? noo, ja bym raczej powiedzial cos znacznie innego, no ale ro Twoje dzielo ma byc.

No dokładnie, np pojedyncza tabela będzie szybsza niż tabela offer i features (IMG:style_emoticons/default/wink.gif)

Cytat
ale ja sie zapytam... poco ?
wywal pole id. zaloz primary na feature_id, offer_id

Masz zdecydowanie rację

Cytat
swoja droga o co biega z tabelami offer_features_* ? tzn z ich iloscia..

Tak jak pisałem cechy mogą być różnych typów.

Jeśli np cechą będzie cena to jako varchar nie będzie posortowana właściwie np

Składowanie daty, float, int w bazie jako varchar to chyba nie najlepszy sposób?

Ten post edytował jachu151 12.07.2012, 21:07:26
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: 25.08.2025 - 03:24