Новости
Документация
Download
Webboard
Поиск
FAQ/ЧаВо
Обратная связь




MySQL.RU - Webboard



Вернуться
GROUP_CONCAT (AXAE) 27/03/2007 - 10:16:09
      Re: GROUP_CONCAT (AXAE) 27/03/2007 - 12:40:26
      Re: GROUP_CONCAT (Валерий) 19/04/2007 - 10:13:29
      Re: GROUP_CONCAT (group_concat_max_len) 26/06/2007 - 16:31:03

> Original message text:
> From: AXAE - 27/03/2007 - 10:16:09
> Subject:GROUP_CONCAT
> -----------------
> Какие ограничения накладываются на работу GROUP_CONCAT?
> Этот запрос работает:
> SELECT CONCAT_WS('\r',`_profiles`.name,GROUP_CONCAT(DISTINCT CONCAT_WS('\t',
> CONCAT(Fam, ' ', LEFT(humans.`Name`,1), '. ', LEFT(LastName,1),'.'), DateBirth, `scards`.Profession)
> SEPARATOR '\r')) as LIST_DISPANCE
> FROM `scards` INNER JOIN humans ON scards.`idHuman`=humans.id
> INNER JOIN `list_profiles_on_scard` ON scards.id=`list_profiles_on_scard`.`idScard`
> INNER JOIN `_profiles` ON `list_profiles_on_scard`.`idProfile`=_profiles.`id`
> WHERE scards.idPMO=9 AND `_profiles`.`tip`='RISK'
> GROUP BY `_profiles`.name
>
> Выдает три строки с таким полем (в квадратных скобках - это символы, уже присутствующие в результирующей строке - символы возврата каретки):
> Первая строка:
> Profile.name1 [return]
> FIO1 [tab] DateBirth[return]
> FIO2 [tab] DateBirth[return]
>
> Вторая:
> Profile.name2[return]
> FIO2 [tab] DateBirth[return]
>
> Третья:
> Profile.name3[return]
> FIO3 [tab] DateBirth[return]
>
> То есть это в строках уже такие группы фамилий с заголовком.
> Но если я повторно пытаюсь сделать одну строку из этих трех (чтобы можно было ее как есть вставить в текстовый файл) с разделителем '\r':
> SELECT GROUP_CONCAT(CONCAT_WS('\r',`_profiles`.name,GROUP_CONCAT(DISTINCT CONCAT_WS('\t',
> CONCAT(Fam, ' ', LEFT(humans.`Name`,1), '. ', LEFT(LastName,1),'.'), DateBirth, `scards`.Profession)
> SEPARATOR '\r')) SEPARATOR '\r') as LIST_DISPANCE
> FROM `scards` INNER JOIN humans ON scards.`idHuman`=humans.id
> INNER JOIN `list_profiles_on_scard` ON scards.id=`list_profiles_on_scard`.`idScard`
> INNER JOIN `_profiles` ON `list_profiles_on_scard`.`idProfile`=_profiles.`id`
> WHERE scards.idPMO=9 AND `_profiles`.`tip`='RISK'
> GROUP BY `_profiles`.name
>
> он говорит "Invalid use of group function". Есть ли какое-нибудь решение? Чтобы объединить три строки из работающего первого запроса в одну с разделителем возврата каретки?
>
>


From: group_concat_max_len - 26/06/2007 - 16:31:03
Subject:GROUP_CONCAT
-----------------
See group_concat_max_len function in documentation.

Do repeating the huge previous post is the bad style.




[Это сообщение - спам!]

Последние сообщения из форума

Уважаемые посетители форума MySQL.RU!
Убедительная просьба, прежде чем задавать свой вопрос в этом форуме, обратите внимание на разделы:
- ответы на наиболее часто задаваемые вопросы - FAQ
- раздел документация
- раздел поиск по сообщениям форума и документации
Также, старайтесь наиболее подробно указывать свою ситуацию (версию операционной системы, версию MySQL, версию программного обеспечения, по которому возникает вопрос, текст возникающих ошибок, и др.)
Помните, чем конкретнее Вы опишете ситуацию, тем больше шансов получить реальную помощь.
 Имя:
 E-mail:
 Тема:
 Текст:
Код подтверждения отправки: Code
31732



РЕКЛАМА НА САЙТЕ
  Создание сайтов | |