Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Zapytanie skorelowane, mysql nie obsługuje, czy da się to zastąpić innym zapytaniem ?
atay
post
Post #1





Grupa: Zarejestrowani
Postów: 58
Pomógł: 0
Dołączył: 8.10.2003

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


mam 2 tabele

users
login: varchar(255)
punkty: int

status:
nazwa: varchar(255)
prog: int

teraz chciałbym wykonać zapytanie
SELECT * FROM users
LEFT JOIN (SELECT nazwa FROM status WHERE users.punkty>status.prog ORDER BY prog LIMIT 1) s ON 1

czyli wykonać zapytanie skorelowane, tak żeby w tabeli users pokazało mi jaki status ma użytkownik, status zależny jest od ilości punktów.
Tabela status zawiera progi np.
raczkujący : 0
pisarz : 100
demon : 1000

Czy da się w mysql napisać jedno zapytanie, żeby to zrealizować ?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
atay
post
Post #2





Grupa: Zarejestrowani
Postów: 58
Pomógł: 0
Dołączył: 8.10.2003

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


no właśnie nie, bo w CASE z góry masz określoną ilość pól, a mi zależy na tym, żeby statusy były w tabeli i mogły być dowolnie zmieniane.

dla większej jasności jeszcze, przykładowe dane
tabela users:
imie - punkty:
Karol - 700
Józef - 1300
Stefan - 2200

status:
nazwa - prog
raczkujący - 0
pisacz - 1000
zaawansowany - 2000

i wynikowo chciałbym dostać
Karol - 700 - raczkujący
Józef - 1300 - pisacz
Stefan - 2200 - zaawansowany
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: 12.10.2025 - 08:46