0 / 0 / 1
Регистрация: 16.02.2016
Сообщений: 15
1

Объединение ячеек одной строки в одну ячейку с условием

17.02.2016, 14:55. Показов 3595. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый день!
Помогите новичку решить задачку. Всем откликнувшимся заранее спасибо!
Условие:
Есть база данных access, которая содержит таблицу "исх" и запрос "Полный адрес".
В таблице "исх" содержится адрес разбитый по столбцам (почтовый индекс, регион, район, город, деревня/посёлок и тп).
Задача:
В результате хотелось бы объединить весь адрес в одну ячейку. У меня получилось это сделать только с помощью построителя выражений в конструкторе запросов оператором "&" и добавив разделитель запятой между объединяемыми ячейками ', '.
В результате получается, если в исходной таблице поле пустое, то вместо него появляется лишняя запятая.
Можно ли поставить какое-то условие, что бы адрес был без лишних запятых?!
Файл с таблицей прилагаю.
Вложения
Тип файла: zip db17.zip (34.5 Кб, 14 просмотров)
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
17.02.2016, 14:55
Ответы с готовыми решениями:

Объед ячеек столбцов одной строки в ячейку с разделением построчно каждой ячейки столбца
Описание действия: Предположим у нас имеется таблица, состоящая из трех столбцов: id Name Дата...

Задание на объединение нескольких строк в одну с условием
Добрый день! Во вложенном файле задание с 2-мя таблицами. Необходимо из файла "Тест" получить...

Объединение 2 строк в одну внутри одной таблице
Всем, привет! Товарищи, вот такая возникла проблема: нужно объединить почти полностью одинаковые 2...

Объединение значений ячеек в одну ячейку
Добрый день! Есть список компаний, их адреса и коды компаний в трех столбцах соответственно. Нужно...

4
902 / 292 / 50
Регистрация: 02.12.2014
Сообщений: 1,229
17.02.2016, 15:48 2
Может, вот так?
Вложения
Тип файла: rar db17.rar (24.4 Кб, 26 просмотров)
1
902 / 292 / 50
Регистрация: 02.12.2014
Сообщений: 1,229
17.02.2016, 15:49 3
Только там про последнюю запятую как-то я не додумал

Добавлено через 1 минуту
Может, последнюю запятую как-то удалять через Replace, как вариант.
А может, и вообще есть способы проще) Интересно было бы увидеть мнения старожилов форума).
1
547 / 274 / 50
Регистрация: 03.04.2015
Сообщений: 926
17.02.2016, 15:57 4
Я вот так делал:
VB.NET
1
2
3
4
5
6
7
8
9
10
Address: IIf(IsNull([IdStreet]);IIf(IsNull([House]);
IIf(IsNull([Ap]);[City];[City] & ", кв. " & [Ap]);
IIf(IsNull([Housing]);
IIf(IsNull([Ap]);[City] & ", д. " & [House];[City] & ", д. " & [House] & ", кв. " & [Ap]);
IIf(IsNull([Ap]);[City] & ", д. " & [House];[City] & ", д. " & [House] & ", корп. " & [Housing] & ", кв. " & [Ap])));
IIf(IsNull([House]);
IIf(IsNull([Ap]);[City] & ", " & [Street];[City] & ", " & [Street] & ", кв. " & [Ap]);
IIf(IsNull([Housing]);
IIf(IsNull([Ap]);[City] & ", " & [Street] & ", д. " & [House];[City] & ", " & [Street] & ", д. " & [House] & ", кв. " & [Ap]);
IIf(IsNull([Ap]);[City] & ", " & [Street] & ", д. " & [House];[City] & ", " & [Street] & ", д. " & [House] & ", корп. " & [Housing] & ", кв. " & [Ap]))))
хыы
Названия полей: город, улица, дом, корпус, квартира.
в поле город заполняется название с типом - г.Москва или п.Кировский
в улицу - название с типом улицы
и в запросе собирается в кучу.
1
Эксперт MS Access
26813 / 14492 / 3192
Регистрация: 28.04.2012
Сообщений: 15,782
17.02.2016, 23:39 5
Лучший ответ Сообщение было отмечено alvk как решение

Решение

Так быстрее будет. И короче. Пользуемся разным результатом слияния для NULL при конкатенации амперсендом (&) и плюсом (+).
SQL
1
2
3
4
5
6
7
8
9
10
SELECT mid((', ' + INS_RL_ZIPCODE) 
& (', ' + Исх!INS_RL_REGION) 
& (', ' + Исх!INS_RL_TERRITORY) 
& (', ' + Исх!INS_RL_CITY) 
& (', ' + Исх!INS_RL_TOWN) 
& (', ' + Исх!INS_RL_STREET) 
& (', ' + Исх!INS_RL_HOUSE) 
& (', ' + Исх!INS_RL_BUILDING) 
& (', ' + Исх!INS_RL_ROOM),3) AS Адрес
FROM Исх
4
17.02.2016, 23:39
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
17.02.2016, 23:39
Помогаю со студенческими работами здесь

Перенос двух ячеек из одной строки таблицы, в одну ячейку другой таблицы.
Я объясню по кароче. Если чек бокс = true то две ячеки надо занести и объединить в одну в другой...

Перенос двух ячеек из одной строки таблицы, в одну ячейку другой таблицы.
Можно ли каким-то образом перенести так как показано на рисунках. Нужно при нажатии на клавишу,...

Объединение значений ячеек столбца в одну ячейку с разделителем
Добрый день. Помогите, пожалуйста решить задачу. Имеется большое количество названий проектов,...

Объединение ячеек с условием
Доброй день, не особо вникал в VBA, но на работе пригодилось, нужно сделать проверку на одинаковые...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru