0 / 0 / 0
Регистрация: 25.01.2011
Сообщений: 37
|
|
1 | |
Создание запроса с выведением данных в одну строку через запятую04.04.2011, 23:26. Показов 8078. Ответов 14
Метки нет (Все метки)
Добрый вечер!
Вот у меня, как у "чайника" в создании баз данных, возник еще один вопрос. Мне нужно создать такой запрос: Есть таблица - Население и Диспансерные. Они связаны через поле Код, имеющееся у обеих таблиц. В таблице "Диспансерные" есть поле "Диагноз", которое имеет разные значения для одного и того же значения поля Код. Проще говоря, есть пациенты, у них разные диагнозы, в связи с которыми их я взял на диспансерный учет. Каждый диагноз у меня оформлен отдельной строкой: Код фамилия имя отчество диагноз 1 Иванов Иван Иванович ГБ 1 Иванов Иван Иванович ИБС 2 Петров Петр Петрович ГБ 3 Сидоров Сидор Сидорович ХПН 3 Сидоров Сидор Сидорович ГБ И вот мне нужно, чтобы не отдельными строками выводились данные с диагнозом, а в одной строке через запятую, т.е. так: Код фамилия имя отчество диагноз 1 Иванов Иван Иванович ГБ, ИБС 2 Петров Петр Петрович ГБ 3 Сидоров Сидор Сидорович ХПН, ГБ Или см. вложение "запрос". Вопрос - как енто все сделать???? Помогите, кто чем может
0
|
04.04.2011, 23:26 | |
Ответы с готовыми решениями:
14
Вывод данных из нескольких строк таблицы в одну строку через разделитель (пробел, запятую) Сгруппировать строки, а разные значения в столбце записать в одну строку через запятую Совмещение значений нескольких строк в одну через запятую Несколько строк адресов в одну ячейку через запятую |
453 / 215 / 5
Регистрация: 16.05.2010
Сообщений: 420
|
|
05.04.2011, 14:41 | 2 |
Это форум по Access.
0
|
0 / 0 / 0
Регистрация: 25.01.2011
Сообщений: 37
|
|
05.04.2011, 21:20 [ТС] | 3 |
Я знаю Ехеl я задействовал лишь для того, чтобы показать что у меня в Access есть, и то, что нужно сделать.
0
|
453 / 215 / 5
Регистрация: 16.05.2010
Сообщений: 420
|
|
05.04.2011, 22:26 | 4 |
Так можно и в Аксе. Или ктото должен еще пример написать ?
0
|
0 / 0 / 0
Регистрация: 25.01.2011
Сообщений: 37
|
|||||||||||
05.04.2011, 22:30 [ТС] | 5 | ||||||||||
Да тут разницы нет. Ведь, суть то я уже изложил
Ну можно еще раз:
0
|
2454 / 797 / 24
Регистрация: 18.08.2009
Сообщений: 1,697
|
|
07.04.2011, 14:30 | 6 |
фельдшерАнтоний, у Вас какой офис?-в 2007 можно в одном поле хранить перечисление значений
0
|
0 / 0 / 0
Регистрация: 25.01.2011
Сообщений: 37
|
|
08.04.2011, 17:06 [ТС] | 7 |
У меня офис 2003 года
0
|
1905 / 782 / 31
Регистрация: 11.02.2010
Сообщений: 1,567
|
|
09.04.2011, 04:19 | 8 |
фельдшерАнтоний, тебе согласны помочь составить нужную функцию, все что нужно - экспортировать таблицу в файл access и выложить эту болванку здесь
0
|
0 / 0 / 0
Регистрация: 25.01.2011
Сообщений: 37
|
|
10.04.2011, 00:30 [ТС] | 9 |
Хорошо. Смотрите вложения - образец БД. Там таблица - диспансерные.
0
|
453 / 215 / 5
Регистрация: 16.05.2010
Сообщений: 420
|
|
10.04.2011, 09:13 | 10 |
2
|
6 / 6 / 0
Регистрация: 30.08.2010
Сообщений: 32
|
|
10.04.2011, 10:43 | 11 |
Может сделать так?
1
|
0 / 0 / 0
Регистрация: 25.01.2011
Сообщений: 37
|
|
10.04.2011, 13:33 [ТС] | 12 |
Спасибо! Но у меня была иная просьба. Не просто связать все в одно поле. А связать только диагнозы, причем так, чтобы на одного и того же человека не две строки и более выдавало, а одна, но с диагнозами через запятую. В таблице изначальной все изложено разными строками. Т.е. на одного и того же человека есть несколько строк с диагнозами. Мне нужно эти строки превратить в одну строку с помощью запроса, чтобы диагнозы разных строк шли через запятую. Если что-то не понятно, пишите
Добавлено через 1 минуту Да! Похоже, что именно так Добавлено через 11 минут Все бы хорошо, но там в запросе, что Вы создали, отбираются только первые и последние значения диагнозов, упуская те диагнозы, что между ними. Как бы сделать, чтобы все диагнозы (независимо от их количества) через запятую были в одном поле?
0
|
453 / 215 / 5
Регистрация: 16.05.2010
Сообщений: 420
|
|
10.04.2011, 14:37 | 13 |
Похоже, функцию нужно писать. Из запроса с нумерацией строк получить количество диагнозов у пациента. Потом циклом сформировать строку.
PS. А зачем такие сложности ? Не проще ли вывести диагнозы в список ?
0
|
6 / 6 / 0
Регистрация: 30.08.2010
Сообщений: 32
|
|
10.04.2011, 19:28 | 14 |
Все бы хорошо, но там в запросе, что Вы создали, отбираются только первые и последние значения диагнозов, упуская те диагнозы, что между ними. Как бы сделать, чтобы все диагнозы (независимо от их количества) через запятую были в одном поле?[/QUOTE]
Зачит надо начать с создания таблицы Диагнозов
0
|
1905 / 782 / 31
Регистрация: 11.02.2010
Сообщений: 1,567
|
|
11.04.2011, 20:09 | 15 |
вот, было перечисление через запятую https://www.cyberforum.ru/ms-a... post877733
0
|
11.04.2011, 20:09 | |
11.04.2011, 20:09 | |
Помогаю со студенческими работами здесь
15
Города через запятую в одном поле запроса Как объединить данные из нескольких строк в одну, через запятую? Совмещение значений нескольких строк в одну через запятую - MS Access Данные разных полей запроса с одно поле через запятую? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |