Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 94 Pomógł: 14 Dołączył: 11.10.2007 Ostrzeżenie: (0%)
|
Witam,
Mam tabele: gracze: id_g, punkty schowki: id_s, gracz, nazwa Potrzebuję listę (przykład): "nazwa", "gracz" góra, 1 plecak, 2 drzewo, 3 Jak mogę wylosować po jednym rekordzie "nazwa, gracz" dla każdego garcza "gracz" przy warunkach: schowki.gracz=gracze.id_g AND gracze.punkty>0 Zrobiłem coś takiego, ale nie działa tak jak chcem: SELECT `gracz`, `nazwa` FROM `gracze`, `schowkia` WHERE `schowki.gracz`=`gracze.id_g` AND `gracze.punkty`>0 GROUP BY `gracz` ORDER BY RAND() Proszę o podpowiedź co robię źle. Ten post edytował SzamanGN 3.12.2007, 19:33:39 |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 94 Pomógł: 14 Dołączył: 11.10.2007 Ostrzeżenie: (0%)
|
Oto poprawiony opis problemu:
Mam tabele: gracze: id_g, punkty 1, 10 2, 10 3, 10 schowki: id_s, gracz, nazwa 1, 1, "góra" 2, 1, "dom" 3, 1, "grota" 4, 2, "plecak" 5, 2, "kieszeń" 6, 2, "jaskinia" 7, 3, "drzewo" 8, 3, "jama" 9, 3, "skrzynia" Potrzebuję listę (przykład): "gracz", "nazwa" 1, losowe z góra, dom lub grota 2, losowe z plecak, kieszeń lub jaskinia 3, losowe z drzewo, jama lub skrzynia Chcem wylosować po jednym rekordzie "schowki.nazwa" dla każdego garcza "gracze.id_g" przy warunkach: schowki.gracz=gracze.id_g AND gracze.punkty>0 Zrobiłem coś takiego: SELECT `gracz`, `nazwa` FROM `gracze`, `schowkia` WHERE `schowki.gracz`=`gracze.id_g` AND `gracze.punkty`>0 GROUP BY `gracz` ORDER BY RAND() Pretestowałem też podpowiedź indeo: SELECT S.gracz, S.nazwa FROM gracze G inner join schowki S on G.id_g=S.gracz where G.punkty>0 GROUP BY S.gracz ORDER BY RAND() ale jest problem, bo za każdym razem pokazuje tą samą listę: "gracz", "nazwa" 1, góra 2, plecak 3, drzewo czyli "schowki.nazwa" to pierwsza napotkana wartość dla każdego nowego "schowki.gracz". Tu jest rozwiązanie mojego problemu. |
|
|
|
SzamanGN Rozwiązane [MySQL] Jak zapytać bazę? 29.11.2007, 11:02:19
Indeo Piszesz strasznie niedbale - błędy ortograficzne, ... 30.11.2007, 22:42:42 ![]() ![]() |
|
Aktualny czas: 27.12.2025 - 23:29 |