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
erix
post
Post #2





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




[sql]JOIN LEFT[sql] + warunek uzależniony od kolumny. IMHO najlepiej byłoby tu dodać pomocniczą kolumnę, która by przechowywała początek zakresu, a nie tylko koniec, tj:
  • 0, 100
  • 100, 2000

i tak dalej, ale z tym już sobie powinieneś poradzić.
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 - 11:29