Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2015.09.13;
Скачать: [xml.tar.bz2];

Вниз

Группировка записей таблицы в одно поле   Найти похожие ветки 

 
Михаил   (2011-05-16 09:26) [0]

Здравствуйте. Уже 2 дня мучаюсь с составлением запроса.
Есть такая таблица. Состоит из 3-х полей

CREATE TABLE ZNAKI (
   ID             INTEGER NOT NULL,
   ZNAKTYPE       VARCHAR(10) NOT NULL,
   NOMER          VARCHAR(10) NOT NULL
);


В ней хранятся такие данные

ID | ZNAKTYPE | NOMER
---------------------------------
1 | Треугольный | 1.1
2 | Треугольный | 1.2
3 | Треугольный | 1.3
4 | Треугольный | 1.4
5 | Треугольный | 1.5
6 | Треугольный | 1.6


Требуется получить такой результат

ZNAKTYPE  | NOMER
----------------------------------------------
Треугольный | 1.1, 1.2, 1.3, 1.4, 1.5, 1.6


Как составить запрос? Знаю что нужно использовать GROUP BY, но еще есть какая-то функция для объединения в лист. Нигде не могу найти. Заранее спасибо за помощь!!!


 
Виталий Панасенко(дом)   (2011-05-16 09:45) [1]

в ИБ6 такой функции нету. может в старших версиях и есть.. но точно есть в ФБ с версии 2, list


 
Anatoly Podgoretsky ©   (2011-05-16 10:14) [2]

> Михаил  (16.05.2011 09:26:00)  [0]

С чего бы это называть группировкой?
А сделать можно с помощью хранимой процедуры или курсором.


 
Михаил   (2011-05-16 10:16) [3]


> Anatoly Podgoretsky ©   (16.05.11 10:14) [2]


что значит курсором?
Приведите пример запроса пожалуйста.


 
Михаил   (2011-05-16 10:17) [4]

в MySQL есть хорошая функция GROUP_CONCAT, но к сожалению в InterBase она не работает. Есть ли какой-нибудь аналог?
Каким способом еще можно решить задачу?


 
Михаил   (2011-05-16 10:18) [5]


> С чего бы это называть группировкой?


ну потому что несколько записей объединяется в одно поле. Ну хорошо объединение назовем. Неправильно выразился


 
Anatoly Podgoretsky ©   (2011-05-16 10:24) [6]


> Приведите пример запроса пожалуйста.

Я не работаю с IB уже более 10 лет


 
Anatoly Podgoretsky ©   (2011-05-16 10:24) [7]


> Михаил   (16.05.11 10:18) [5]
>
> > С чего бы это называть группировкой?
>
>
> ну потому что несколько записей объединяется в одно поле.
>  Ну хорошо объединение назовем. Неправильно выразился

Это список, ничего общего с группировкой, которая работает с аггрегатами.


 
Anatoly Podgoretsky ©   (2011-05-16 10:26) [8]


> ну потому что несколько записей объединяется в одно поле.
>  Ну хорошо объединение назовем. Неправильно выразился

К объединению это тоже никакого отношения не имеет, при объединение количество записей увеличивается.
Соединение тоже не проходит, там надо знать четкое количество записей.

Это список


 
Виталий Панасенко(дом)   (2011-05-16 10:49) [9]

Перейди на FireBird 2.5, там есть LIST


 
Михаил   (2011-05-16 11:32) [10]

Спасибо всем за советы!!!



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2015.09.13;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.002 c
15-1422634959
Pavia
2015-01-30 19:22
2015.09.13
Одна пака три диска


15-1422426177
mein
2015-01-28 09:22
2015.09.13
Немного истории - Казань брал!..


15-1422480604
Юрий
2015-01-29 00:30
2015.09.13
С днем рождения ! 29 января 2015 четверг


2-1398412248
L_Karbo
2014-04-25 11:50
2015.09.13
Какой цвет у разделительных линий TStringList?


2-1398316535
lewka_s
2014-04-24 09:15
2015.09.13
Проверка создания формы





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский