







|
MySQL.RU - Webboard
Вернуться
Непонятки с UDF & group by (Саша) 08/01/2004 - 02:07:56
Re: Непонятки с UDF & group by (Энкарито) 08/01/2004 - 12:26:30
Re: Непонятки с UDF & group by (Энкарито) 08/01/2004 - 12:27:22
Re: Непонятки с UDF & group by (Энкарито) 08/01/2004 - 12:28:34
Re: Извини!Те сообщения клоны , читай только одно (Энкарито) 08/01/2004 - 12:32:36
From: Саша - 08/01/2004 - 02:07:56
Subject:Непонятки с UDF & group by
-----------------
У меня есть агрегатная функция pairalign, которая в качестве 2 параметров принимает последовательности символов. Ее суть - попарное сравнение последовательностей (дальше - неинтересно: генетика, выравнивание...)
Последовательности хранятся как TEXT-поля. Смотрел содержимое таблицы - все с ними нормально.
Для удобства вывел поля во временную таблицу, получив такое:
id seq1 seq2
-------------------------
1 some_seq1 some_seq3
2 some_seq1 some_seq4
3 some_seq2 some_seq3
4 some_seq2 some_seq4
Известно, что агрегатная функция работает с группами. Прекрасно, здесь - 4 группы (если группировать по ключу id)
Делаю select pairalign(seq1, seq2) from seq_tbl group by id;
Выдает какой-то бред (я просто знаю, что должно получиться).
В качестве теста изменяю функцию так, чтобы она показала, что подается на вход главной считающей функции. И удивленно обнаруживаю, что после
memcpy( inputDataElem->seq1_, args->args[ 0 ], strlen( (char*)args->args[ 0 ] ) )
в seq1_ оказывается считано в 2 раза больше данных, чем хранится в соотв. ячейке. Хотя с seq2_ при аналогичном memcpy все в порядке...
Помнится, когда задавал еще какие-то дополнительные условия where - выводило и как положено. Но я не уловил суть и поэтому не запомнил. Бред, в общем, какой-то...
Где же ошибка?
[Это сообщение - спам!]
Последние сообщения из форума
Уважаемые посетители форума MySQL.RU!
Убедительная просьба, прежде чем задавать свой вопрос в этом форуме, обратите внимание на разделы:
- ответы на наиболее часто задаваемые вопросы - FAQ
- раздел документация
- раздел поиск по сообщениям форума и документации
Также, старайтесь наиболее подробно указывать свою ситуацию (версию операционной системы, версию MySQL,
версию программного обеспечения, по которому возникает вопрос, текст возникающих ошибок, и др.)
Помните, чем конкретнее Вы опишете ситуацию, тем больше шансов получить реальную помощь.
12493
|
|