Общие > Базы данных
Интересный запрос
Serchey:
Верняк, без временной таблици не обойтись!
AlieN:
Напишите плиз как для чайника как это сделать :)
Alexandr:
CREATE TEMPORARY TABLE tmp SELECT * FROM gamerating WHERE 1=0;
select min(race1+race2+race3+race4) as total, userid from gamerating group by userid;
в цикле для каждого userid{
INSERT INTO tmp SELECT *, (race1+race2+race3+race4) as total FROM gamerating WHERE userID=$userID AND ROUND((race1+race2+race3+race4), 5)=ROUND($total, 5);
}
SELECT * FROM tmp;
Serchey:
Я бы сделал это так:
CREATE TEMPORARY TABLE tmp (
userID int(11) NOT NULL default \'0\',
total double NOT NULL default \'0\'
) TYPE=HEAP;
INSERT INTO tmp SELECT userid, min(race1+race2+race3+race4) FROM gamerating GROUP BY userid;
SELECT g.userid, g.race1, g.race2, g.race3, g.race4, (g.race1+g.race2+g.race3+g.race4) as total, g.day FROM
gamerating g, tmp t WHERE (g.race1+g.race2+g.race3+g.race4)=t.total and g.userid=t.userid;
Covex:
Alexandr
Serchey
чёй- то я ваши конструкции нефига не понял.
Serchey в том виде в каком написано оно не может работать.
Что-то в этом мире не так... Надо жрецов спросить. Может они помогут. Я лично нефига из временой таблицы не высосал -> ошибки при группировке
Навигация
Перейти к полной версии