SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 16.01.2010 15:59:51

pixel
Завсегдатай
Зарегистрирован: 16.04.2009
Сообщений: 39

Объединение 3 полей в одно ФИО

добрый день.
Подскажите плиз как можно убрать ненужные пробелы и добавить только по одному? Т.е. делаю:
select fam||ima||otch as fio from personal
получаю:
                         FIO
Иванов              Петр            Сидорович
можно ли как то в запрос добавить что либо что бы получилось
Иванов Петр Сидорович, или Иванов П.С.
Делаю отчет и хотелось бы сделать красиво.

Неактивен

 

#2 17.01.2010 03:08:21

LazY
_cмельчак
MySQL Authorized Developer and DBA
Зарегистрирован: 02.04.2007
Сообщений: 849

Re: Объединение 3 полей в одно ФИО

SELECT CONCAT('fam', ' ', 'ima', ' ', 'otch') FROM personal

Неактивен

 

#3 17.01.2010 07:29:46

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5842

Re: Объединение 3 полей в одно ФИО

Использовать оператор || для объединения строк плохая идея. Он работает как OR и только если установлен режим PIPES_AS_CONCAT, то объединяет строки.

test >select 'asd'||'sdf';
+--------------+
| 'asd'||'sdf' |
+--------------+
|            0 |
+--------------+
1 row in set, 2 warnings (0.38 sec)

test >set sql_mode = 'pipes_as_concat';
Query OK, 0 rows affected (0.00 sec)

test >select 'asd'||'sdf';
+--------------+
| 'asd'||'sdf' |
+--------------+
| asdsdf       |
+--------------+
1 row in set (0.00 sec)


Оператор || не добавляет лишних пробелов, поэтому заменой на CONCAT (которая все равно нужна) данная проблема не лечится.

Посмотрите, есть ли пробелы в базе. Если нет, то ищите ошибку в приложении, формирующем отчет.

Неактивен

 

#4 17.01.2010 16:52:59

pixel
Завсегдатай
Зарегистрирован: 16.04.2009
Сообщений: 39

Re: Объединение 3 полей в одно ФИО

дело в том, что у меня не mysql база (я тупо полагал что sql он и в африке sql). я использую Delphi5+Interbase и concat не прокатывает.

Неактивен

 

#5 17.01.2010 22:31:23

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5842

Re: Объединение 3 полей в одно ФИО

Стандарт то он стандарт, но у каждого свои расширения к нему.

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson