avshap: (Default)
avshap ([personal profile] avshap) wrote2006-08-08 11:47 am

Матрица и алгоритмы

А никто не подкинет ссылки на алгоритм, позволяющий из матрицы такого вида:

A    | 1 |   | 3 |
AA   |   | 2 |   |
AA   | 1 |   |   |
AAB  | 1 |   |   |
AAB  |   | 2 | 3 |
AAAB | 1 | 2 |   |


получить вот такую матрицу:

A    | 1 |   | 3 |
AA   | 1 | 2 |   |
AAB  | 1 | 2 | 3 |
AAAB | 1 | 2 |   |


с наименьшими затратами?

[identity profile] sergey-ilyin.livejournal.com 2006-08-08 06:00 am (UTC)(link)
select Code, sum(isnull(Data1, 0)) as Data1, sum(isnull(Data2, 0)) as Data2, sum(isnull(Data3, 0)) as Data3
from SuperTable
group by Code
order by Code

[identity profile] sergey-ilyin.livejournal.com 2006-08-08 06:01 am (UTC)(link)
Только вместо пустых ячеек в результате будут нули.

В столбцах настоящие числа

[identity profile] ping-ving.livejournal.com 2006-08-08 06:01 am (UTC)(link)
Не переодетые строки?
По каждому конкретному AAB гарантированно только один not null?

Тогда навскидку:

select key1, sum(nvl(v1,0)),sum(nvl(v2,0))sum(nvl(v3,0)) from supermatrix group by key1

ЗЫ. На Ц умеешь?

Re: В столбцах настоящие числа

[identity profile] avshap.livejournal.com 2006-08-08 07:56 am (UTC)(link)
Числа настоящие, только не целые а с плавающей точкой.

ЗЫ. На Ц умеешь?
Ась?

Это неважно, что с плавающей.

[identity profile] ping-ving.livejournal.com 2006-08-08 08:03 am (UTC)(link)
Важно, чтобы были числа, а над ними имела смысл sum.

На Ц я уже набацал, теперь вот стало не хватать библиотеки.

Re: Это неважно, что с плавающей.

[identity profile] avshap.livejournal.com 2006-08-08 08:09 am (UTC)(link)
Какой библиотеки?

libsasl2

[identity profile] ping-ving.livejournal.com 2006-08-08 10:23 am (UTC)(link)
Оказалось, ld западло брать библиотеки откуда-нибудь, кроме /lib, а -L/usr/lib он на хую вертел.

Re: libsasl2

[identity profile] avshap.livejournal.com 2006-08-08 10:40 am (UTC)(link)
Э... Что за компилятор?

гцц

[identity profile] ping-ving.livejournal.com 2006-08-08 10:42 am (UTC)(link)
gcc-3.4.3 под кр. шапкой.
В прошлый раз, сцуко, компоновало...

[identity profile] alex-mashin.livejournal.com 2006-08-08 06:02 am (UTC)(link)
А что, Sum() и GROUP BY отменили?

[identity profile] khathi.livejournal.com 2006-08-08 07:20 am (UTC)(link)
У меня такое впечатление, что SQL Лёша видит второй раз в жизни. ;)

[identity profile] sergey-ilyin.livejournal.com 2006-08-08 07:51 am (UTC)(link)
Это примерно шестой или седьмой вопрос -- так что не во второй ;)

Леша, ты не обижайся :)

[identity profile] avshap.livejournal.com 2006-08-08 07:57 am (UTC)(link)
Я про него знал, но нужен он мне был как собаке пятая нога. Я, в основном, C да ассемблерами всякой восьмибитной мелочи пробавляюсь.

[identity profile] khathi.livejournal.com 2006-08-08 08:01 am (UTC)(link)
Так потому я и говорю, что во второй. ;)