LINUX.ORG.RU

что значит свернуть по одному полю?

anonymous
()
Ответ на: комментарий от Onanim

ну например есть массив:

$a=(['str1',12], ['str2',15], ['str1',2]);

как можно получить из него такой массив: (['str1',14] ['str2',15]) ?

staks
() автор топика
Ответ на: комментарий от staks

Нагородил ты...для таких задач и придумали хэши.

#!/usr/bin/env perl
use strict;

my @a=(['str1',12], ['str2',15], ['str1',2]);
my %b;

for (@a){
    $b {$_->[0]} += $_->[1];
}

# получаешь хэш %b - ключами которого являются 
# str1,str2 и т.д. а значениями соответственно
# сумма значений одноименного ключа.

die $b{str1};

anonymous
()
Ответ на: комментарий от anonymous

но самые тонкие извращенцы могут всё добро загнать в sql'ую базу и потом одним запросом наковырять результат :)

Pi ★★★★★
()
Ответ на: комментарий от staks

>собсно шо я сделал :-) точнее все это добро там и было, тока в разных базах

хех... собсно ты это и должен был сделать, имея данные в базе.

Pi ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.