Здравствуйте,
Помогите новичку!
Необходимо из таблицы
id | ts | r | traff | nbids | ccong | ndv | anblo | mhtime | nbansw | dir
--------+---------------------+---------+-------+-------+-------+------+-------+--------+--------+-----
1 | 2011-09-09 08:00:00 | MARI | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 2
2 | 2011-09-09 08:00:00 | TRTI | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 2
3 | 2011-09-09 08:00:00 | VANI | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 2
4 | 2011-09-09 08:00:00 | ZISI | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 2
5 | 2011-09-09 08:00:00 | SEVI | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 2
выбрать данные для r like 'MEGFIN%' с максимальными значениями traff по дням. Должно получиться что-то типа:
date | peak_time | max | r
------------ +----------- +------- +---------
2011-11-27 | 14:00:00 | 391.6 | MEGFINI
2011-11-27 | 16:00:00 | 0.1 | MEGFINO
2011-11-28 | 14:00:00 | 761.6 | MEGFINI
2011-11-28 | 15:00:00 | 108.6 | MEGFINO
2011-11-29 | 15:00:00 | 729.9 | MEGFINI
2011-11-29 | 15:00:00 | 74.2 | MEGFINO
2011-11-30 | 14:00:00 | 732.6 | MEGFINI
2011-11-30 | 15:00:00 | 75.6 | MEGFINO
Просто лениво проверять,
Просто лениво проверять, начните с этого запроса, а там уже доработаете:
Так SELECT ts, max(traff), r
Так
SELECT ts, max(traff), r FROM report6_raw57 WHERE r LIKE 'MEGFIN%' GROUP BY ts,traff, r;
фигню выдаёт:
ts | max | r
---------------------+-------+---------
2011-11-28 18:00:00 | 560.9 | MEGFINI
2011-11-29 19:00:00 | 0.2 | MEGFINO
2011-11-28 02:00:00 | 19.5 | MEGFINI
2011-11-30 09:00:00 | 0.3 | MEGFINO
2011-11-28 00:00:00 | 60.8 | MEGFINI
2011-12-01 16:00:00 | 38.2 | MEGFINO
2011-11-29 22:00:00 | 270.3 | MEGFINI
2011-12-01 06:00:00 | 12.4 | MEGFINI
2011-11-29 15:00:00 | 74.2 | MEGFINO
2011-11-28 05:00:00 | 5.9 | MEGFINI
2011-11-29 04:00:00 | 0.1 | MEGFINO
2011-11-29 12:00:00 | 728.7 | MEGFINI
2011-11-27 21:00:00 | 0.2 | MEGFINO
2011-11-28 02:00:00 | 0 | MEGFINO
2011-11-28 16:00:00 | 729.5 | MEGFINI
2011-11-28 22:00:00 | 272.9 | MEGFINI
2011-11-29 23:00:00 | 150.3 | MEGFINI
2011-11-27 16:00:00 | 0.1 | MEGFINO
2011-11-29 09:00:00 | 310.6 | MEGFINI
2011-11-29 12:00:00 | 59.9 | MEGFINO
Я пробовал так
select cast(rep.ts as date) date,cast(rep.ts as time) peak_time,max(traff), r
from report6_raw57 rep, (select cast(ts as date),max(traff) mt ,r row from report6_raw57 where r like 'MEGFIN%' group by 1, row) a where r like'MEGFIN%' and rep. traff=a.mt group by 1,2,r,traff order by 1;
но получил много лишнего для MEGFINO ????
date | peak_time | max | r
------------+-----------+-------+---------
2011-11-27 | 14:00:00 | 391.6 | MEGFINI
2011-11-27 | 16:00:00 | 0.1 | MEGFINO
2011-11-27 | 20:00:00 | 0.6 | MEGFINO
2011-11-28 | 00:00:00 | 0.1 | MEGFINO
2011-11-28 | 04:00:00 | 0.1 | MEGFINO
2011-11-28 | 05:00:00 | 0.1 | MEGFINO
2011-11-28 | 06:00:00 | 0.1 | MEGFINO
2011-11-28 | 07:00:00 | 0.1 | MEGFINO
2011-11-28 | 14:00:00 | 761.6 | MEGFINI
2011-11-28 | 15:00:00 | 108.6 | MEGFINO
2011-11-29 | 01:00:00 | 0.1 | MEGFINO
2011-11-29 | 04:00:00 | 0.1 | MEGFINO
2011-11-29 | 06:00:00 | 0.1 | MEGFINO
2011-11-29 | 08:00:00 | 0.1 | MEGFINO
2011-11-29 | 09:00:00 | 0.6 | MEGFINO
2011-11-29 | 15:00:00 | 729.9 | MEGFINI
2011-11-29 | 15:00:00 | 74.2 | MEGFINO
2011-11-30 | 01:00:00 | 0.1 | MEGFINO
2011-11-30 | 02:00:00 | 0.1 | MEGFINO
2011-11-30 | 06:00:00 | 0.1 | MEGFINO
2011-11-30 | 14:00:00 | 732.6 | MEGFINI
2011-11-30 | 15:00:00 | 75.6 | MEGFINO
2011-11-30 | 22:00:00 | 0.1 | MEGFINO
2011-11-30 | 23:00:00 | 0.1 | MEGFINO
2011-12-01 | 00:00:00 | 0.1 | MEGFINO
2011-12-01 | 01:00:00 | 0.1 | MEGFINO
2011-12-01 | 07:00:00 | 0.1 | MEGFINO
2011-12-01 | 08:00:00 | 0.1 | MEGFINO
2011-12-01 | 09:00:00 | 0.6 | MEGFINO
2011-12-01 | 12:00:00 | 74.2 | MEGFINO
2011-12-01 | 14:00:00 | 707.2 | MEGFINI
2011-12-01 | 14:00:00 | 86.3 | MEGFINO
2011-12-02 | 00:00:00 | 76.2 | MEGFINI
2011-12-02 | 00:00:00 | 0.1 | MEGFINO
2011-12-02 | 02:00:00 | 0.1 | MEGFINO
Можете сделать дамп таблиц с
Можете сделать дамп таблиц с данными и выложить? Ибо набивать руками данные как-то не больно...
Выложить файл проблематично
Выложить файл проблематично по ряду причин.