Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
21 ноя 2024, 20:55

В запросе данные нескольких строк поместить в одну

Автор depb, 26 мая 2022, 12:09

0 Пользователей и 1 гость просматривают эту тему.

depb

Всем привет, элементарная задача, но что-то затык   :dfbsdfbsdf:  Если упростить задачу, пример в следующем. Допустим, есть табличная часть "Контактная информация". В этой таблице могут быть данные вида "Домашний телефон"и  "Мобильный телефон", например в таблице две строки - Домашний телефон 770679 и Мобильный телефон 8915-920-98-00. Как запросом получить итоговый результат в одну строку, типа Телефоны 770679, 8915-920-98-00?

antoneus

делать два соединения с ТЧ, одно по мобильным, другое по домашним и конкатенировать

естьnull(Мобильные.НомерТелефона + ", ", "") + естьnull(Домашние.НомерТелефона, "") Как Телефоны

LexaK

depb, примерно так (это пример, необходимо подставить свои реквизиты, наименования, параметры)

выбрать первые 10
таб.*,
тел1.Представление + "," + тел2.Представление как Номер
из
(выбрать "Телефоны:" как Телефон) Таб
левое соединение
справочник.Контрагенты.КонтактнаяИнформация тел1
по тел1.вид.Наименование = "Домашний телефон"
левое соединение
справочник.Контрагенты.КонтактнаяИнформация тел2
по тел2.вид.Наименование = "Рабочий телефон"

если помогло нажмите: Спасибо!

depb

Спасибо за советы, помогли! Оформил решение в таком виде

ВЫБРАТЬ
ФизическиеЛицаКонтактнаяИнформация.Представление КАК ДомашнийТелефон,
ФизическиеЛицаКонтактнаяИнформация.Ссылка КАК ФизЛицо
ПОМЕСТИТЬ ВТ_ДомашниеТелефоны
ИЗ
Справочник.ФизическиеЛица.КонтактнаяИнформация КАК ФизическиеЛицаКонтактнаяИнформация
ГДЕ
ФизическиеЛицаКонтактнаяИнформация.Вид.Наименование = "Домашний телефон"
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
ФизическиеЛицаКонтактнаяИнформация.Представление КАК МобильныйТелефон,
ФизическиеЛицаКонтактнаяИнформация.Ссылка КАК ФизЛицо
ПОМЕСТИТЬ ВТ_МобильныеТелефоны
ИЗ
Справочник.ФизическиеЛица.КонтактнаяИнформация КАК ФизическиеЛицаКонтактнаяИнформация
ГДЕ
ФизическиеЛицаКонтактнаяИнформация.Вид.Наименование = "Мобильный телефон"
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
ЕСТЬNULL(ВТ_МобильныеТелефоны.МобильныйТелефон + ", ", "") + ЕСТЬNULL(ВТ_ДомашниеТелефоны.ДомашнийТелефон, "") КАК Телефоны,
ВТ_ДомашниеТелефоны.ФизЛицо КАК ФизЛицо
ПОМЕСТИТЬ ВТ_Телефоны
ИЗ
ВТ_ДомашниеТелефоны КАК ВТ_ДомашниеТелефоны
ПОЛНОЕ СОЕДИНЕНИЕ ВТ_МобильныеТелефоны КАК ВТ_МобильныеТелефоны
ПО ВТ_ДомашниеТелефоны.ФизЛицо = ВТ_МобильныеТелефоны.ФизЛицо
;

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск