![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 25 Pomógł: 0 Dołączył: 29.05.2007 Ostrzeżenie: (0%) ![]() ![]() |
witam, mam spadkową bazę danych, nie wnikam w poprawność struktury. co najwazniejsze muszę na niej pracować bez większych zmian. mam pewien problem. schemat tablicy parametrów:
id | owner_id | param | value gdzie id to primary key, owner_id to id uzytkownika dla którego tabela gromadzi parametry, natomiast param to nazwa parameru a value jego wartość. i teraz dochodzę do momentu filtrowania. Chciałbym pobrać użytkoników (wystarczą same ID), dla których parametry param1 = val1 a param2 = val2 nie mam za bardzo pomysłu. Jedyny, który mam wydaje mi się chyba słaby, mianowicie:
co o tym sądzicie, na pewno są lepsze sposoby? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 25 Pomógł: 0 Dołączył: 29.05.2007 Ostrzeżenie: (0%) ![]() ![]() |
generalnie tych warunków może być więcej lub mniej. Dałem group by aby działało to jak AND i zwracało tylko tych użytkowników którzy spełniają dwa warunki. Na pierwszy rzut oka działa ok i wywala dobrych użytkowników, ale dlatego to wstawiłem, aby ktoś mi potwierdził czy dobrze kombinuje bądź naprowadził na ew. problemy (IMG:style_emoticons/default/smile.gif)
noo, jest jednak słaba strona. Problem pojawia się kiedy chcę pobrać użytkowników którzy mają param1 = val1, natomiast param2 < 3 (z tymże mniejszy od 3 znaczy że może wcale nie być wpisu dla tego parametru, nie ma wpisu param2 = 0). no i tutaj moje zapytanie na pewno zawodzi. Czy ktoś wie jak taki problem rozwiązać? |
|
|
![]() ![]() |
![]() |
Aktualny czas: 17.10.2025 - 03:07 |