|
|
|
| У меня вот такой вопрос родился в связи с моей базой.
Упрощю все.
Есть таблица с тремя полями:
Этаж Комната Арендатор
1............111 кузька
1............112 кузька
2............211 кузька
2............212 кузька
2............213 кузька
И у меня задача, сгруппировать это все в ОДНУ!!!!!!!!!!!!!!!! запись, чтобы ВСЕ значения были видны. То есть должно получиться так:
1,2............111,112,211,212,213............Кузька
Такую таблицу я делала начальнику раньше в Икселе ручками. Хотелось бы ручки освободить и занять их более приятными делами
Ясное дело, что простая группировка в Аксесе такого не позволит, так как Номера комнат все отличаются, а соответственно группировка в моем случае вообще не изменит вид таблицы никак.
Но вдруг есть какое-то выражение, которое позволит все это дело объединить в одну запись, лучше в запросе, но можно и в форме.
ВОТ ЗДЕСЬ Я НАДЕЮСЬ ТОЛЬКО НА ВАС.
Только сразу не говорите, что это невозможно, так как я это тоже вроде понимаю, но все же основываясь на своих пока неглубоких знаниях, я надеюсь, что такое все же возможно.
Сразу не обламывайте. Ну скажите, что это возможно и скажите как?
Моя мечта тогда сбудется и я буду делать это не вручную, а быстро в аксесе.
Спасибо!!!!!!! | |
|
| |
|
|
|
| возможно
http://hiprog.com/index.php?option=com_content&task=view&id=334&Itemid=35 | |
|
| |
|
|
|
| Спасибо огромное за ссылочку. Тема называется "слияние" , видимо поэтому ее и не нашла на этом сайте.
Пойду читать, разбираться!!!!!!! СПАСИБО | |
|
| |
|
|
|
| Аленка! Гляньте вопрос NewAgera от 14.10 про преобразование в поле МЕМО. У него в примере один из запросов делает именно то, что вам нужно. Запрос называется TabUnion4 | |
|
| |
|
|
|
| А там то же самое, что и по ссылочке от osmor.
Да, это то, что нужно. но есть проблема.
И как раз на мой упрощенный вопрос я получила ответ.
Но в итоге наткнулась в боевых условиях на еще одну проблему. Я немного усложню условия. Ближе к реальным.
Вот таблица:
Этаж.....Помещение........Комнаты.........Арендатор
1..................IV.........................1......................кузька
1..................V.........................2......................кузька
2..................IV.........................2......................кузька
3..................II.........................1......................кузька
3..................IV.........................1......................кузька
Как видно, если я буду группировать с помощью посоветованных функций, то я получу
1,1,2,3,3......IV,V,IV,II,IV.........1,2,2,1,1............кузька
Проблема в том, что повторение этажей - это лишнее. Повторение помещений - тоже лишнее.
Как здесь быть? | |
|
| |
|
|
|
| Как вариант:
Предварительно "склеить" этаж, помещение и комнату в одно поле, типа:
1-IV-1 , 1-V-2 и так далее | |
|
| |
|
|
|
| получится слишком громоздко. ведь получается, что все равно этажи и помещения будут повторяться. просто будет вот так: 1-V-1, 1-V-2 и т.д. Здесь явно 1 и V лишние и их лучше бы сгрупиировать в 1 экземпляр. | |
|
| |
|
|
|
| Извинете за офф-топик, но я не понимаю для чего может потребоваться такое представление данных, которое Вы хотите получить. Причём это ведь не единичный случай! Придумали, понимаешь, таблицы, а тут опять Word какой-то получается. Не понимаю, объясните, пожалуйста. | |
|
| |
|
|
|
| +1
Можно сделать отдельный справочник, в котором каждая комната будет иметь свой уникальный ID. И тогда выводить список ID этих комнат. ( ну или их расшифровку 3 этаж
V помещение 1 комната ) | |
|
| |
|
|
|
| А я объясню. Я для своего начальника делаю табличку в Икселе по арендаторам, в которой указаны реквизиты договоров, предмет договора (а именно помещения) и соответственно платежи по месяцам.
Перейдя на БД я себе много упростила, но понятно, что Аксесс - это не Иксель. Поэтому кое в чем я потеряла, но не сильно. Удобство БД слишком сильно перекрывают все, что я потеряла.
В итоге новый тип отчета начальство не устраивает. Им видите ли тяжело привыкать к новому. А я не хочу делать руками то, что у меня и так есть в Аксесе, только немного в другом виде. Вот я и хочу сделать такую фигню. | |
|
| |
|
|
|
| Что касается уникальности каждой комнаты. У меня каждая комната имеет свой уникальный ID. Ведь все помещения по всем зданиям у меня забиты в одну таблицу, что естественно. И далее я с помощью запросов их раскидываю куда нужно.
Но список ID выводить бесполезно. для начальства это ничто. Ведь они увидят обычные цифры, непонятные им. А им нужно видеть этаж, помещение и комнаты.
Что Вы имеете ввиду под расшифровкой, я не знаю. Если то же самое, что Lukas, то это громоздко. | |
|
| |
|
|
|
| В общем, я решила сделать так. Чтобы не париться, я сделала дополнительную табличку. Где все помещения будут забиты вручную как мне и нужно. И именно данные из этой таблички я и буду вставлять в запрос. Пусть смотрят.
В итоге ничего страшного не получится. Один раз забила вручную (к тому же забивать я буду не каждое прям помещение, а через тире, то есть 1-10 помещения и т.п.). Соответственно, это гораздо более удобное решение, чем городить миллион запросов.
А что касается слияния, то с его помощью у меня тоже в общем-то получилось, но при этом мне пришлось сделать более 10 запросов. В итоге я решила, что это полный дебилизм и с таким количеством запросов и ошибиться недолго и предусмотреть все сложно. Поэтому я от этого отказалась. | |
|
| |
|
|
|
| Подождите, я так понимаю, что вам надо группировать данные по арендатору? То есть чтобы было видно какие комнаты снимает кузя? | |
|
| |
|
|
|
| ну да. так и есть. именно по арендатору. причем в отдельных полях должен быть указан этаж (этажи), помещение (помещения), комната (комнаты).
При этом этажи сливать получится только после группировки. Так как если на 1 этаже будет снято кузей 30 комнат, мне не нужно, чтобы единица повторялась в поле Этаж 30 раз. То же самое Помещение. Самая маленькая единица - это комната. Именно ее и нужно сливать без группировок. Но все это муторно. И получается слишком много запросов. А если начальство захочет добавить поле, которого не было? а это не такая уж и фантазия. Придется все эти запросы менять, а я через месяц могу подзабыть, как я там понастроила.
А есть более легкий вариант? Просто если бы не пришлось вообще ничего лишнего забивать ручками, я была бы только рада. Но вариантов не вижу. | |
|
| |
|
13 Кб. |
|
| Вот вам образей моей БД.
Запрос TabUnion4 делает такую группировку, но очень медленный и не работает с полями мемо.
Второй вариант запустить сначала запрос "1" и затем "2" либо выполнить "Макрос1"
Я думаю вам это должно помочь | |
|
| |