|
1 / 1 / 0
Регистрация: 21.01.2021
Сообщений: 183
|
|
Как сократить запрос о многих записях по разным полям23.02.2021, 18:10. Показов 8285. Ответов 115
Метки нет (Все метки)
Приветствую всех форумистов. Может, кто посодействует. Проблема след. Есть 3 поля в БД: Деталь (текст), Модификация, КодДетали. Деталей (записей) за сотню. На каждую есть 3 - 5 Модифов. Детали обозначаются кодами по номерам записей: от 1 до 100. Модифы тоже кодами от 1 до 5 - их вводим вручную. При вводе кода Модифа нужно автоматически присваивать в поле запроса Коэфф: соответствующий тоже код от 1 до 7. Каждый из этих кодов строго соответствует коду Модифа. Если в поле Модиф вводим 1, то в поле запроса Коэфф ставится 3. Если в Модиф вводим 2, то в поле Коэфф ставится 4 и пр.
Я попытался ввести условия в Запрос, но для каждой Детали надо писать в одной строке одной ячейке Конструктора запросов 5 условий, типа: IIf([Деталь]=1;IIf([Модиф]=1;3;IIf([Модиф]=2;4;0))) - это для Детали 1. Тут же после этого кода ставим для Детали 2 - IIf([Деталь]=1;IIf([Модиф]=1;3;IIf([Модиф]=2;4;0;IIf([Деталь]=2;IIf([Модиф]=1;2;IIf([Модиф]=3;5;0)) и так для всех 100 Деталей. Вряд ли что путное получится. Может можно это как-то запрограммировать? Это Access 2000. Ставлю скрин чтоб попонятнее.
0
|
|
| 23.02.2021, 18:10 | |
|
Ответы с готовыми решениями:
115
Запрос выборки по разным полям, а результат в одну таблицу Сортировка постов по произвольным полям ACF. В разных рубриках по разным полям Поиск по разным полям. |
|
1 / 1 / 0
Регистрация: 21.01.2021
Сообщений: 183
|
|
| 27.02.2021, 14:17 [ТС] | |
|
Eugene-LS,: "Пока они жёстко фиксированы в функции :"(не пойму, как ставить цитаты)
Так и надо жестко фиксировать в функциях для всех Деталей. Это значит, что надо в коде просто скопировать строки: Case 1 F = Choose(M, 3, 4, 0, 0, 0) Case 2 F = Choose(M, 2, 0, 5, 0, 0) как: Case 3 F = Choose(M, 1, 4, 3, 0, 0) Case 4 F = Choose(M, 3, 0, 2, 2, 0) и также для остальных Деталей? В скобках это наши постоянные Коэффциенты или это Модифы? Я ничего не понимаю в кодах, как и все у нас.
0
|
|
|
Модератор
6231 / 2909 / 708
Регистрация: 12.06.2016
Сообщений: 7,839
|
|||||||
| 27.02.2021, 14:22 | |||||||
|
1.
В выложенной БД эта функция находится в модуле Module1. Посмотрите там. Вы ведь так и хотите, чтобы поле Коэффициентов появлялось только в запросе. 2. Справочник будет использоваться для этого: Вы пишете: Видимо, там тоже есть подобный справочник. Если так, то этот Excel-справочник можно использовать в БД Access, а не создавать в БД справочник заново. Можете пояснить, что там в Excel происходит? 3. И еще. Вы с самого начала вели речь так, что запрос якобы должен лишь показывает коэффициенты. Но о том, что коэффициенты должны запомниться в таблице Детали, Вы не говорите. И только Ваша фраза "внести Коэффициенты в ячейку каждой строки Детали, как это можно было бы сделать в Excel" из последнего Вашего сообщения говорит о фиксации коэффициентов в таблице. Если требуется коэффициенты запоминать, то нужно а) добавить поле Коэфф в таблицу Детали; б) использовать запрос UPDATE, а не SELECT. Так как надо-то? Запоминать в таблице? Не запоминать?
0
|
|||||||
|
Модератор
6231 / 2909 / 708
Регистрация: 12.06.2016
Сообщений: 7,839
|
||
| 27.02.2021, 14:24 | ||
|
Выделяете нужный фрагмент, появляется всплывающая подсказка-команда "Цитировать" на желтом фоне. Нажимаете на эту подсказку - цитата вставляется в окно редактирования сообщения.
0
|
||
|
13270 / 5947 / 1529
Регистрация: 05.10.2016
Сообщений: 16,651
|
|
| 27.02.2021, 14:31 | |
|
novyi, во ! - пошла вторая страница топика, а "воз и ныне там ..."
Продолжайте "секретничать", к понедельнику будет 5 страниц без малейшего толка.
0
|
|
|
Модератор
6231 / 2909 / 708
Регистрация: 12.06.2016
Сообщений: 7,839
|
|||||
| 27.02.2021, 14:31 | |||||
|
М - переданное в функцию значение модифа, остальные числа - коэффициенты. Как показано в Запрос2. И в кодах VBA разбираться не потребуется.
0
|
|||||
|
13270 / 5947 / 1529
Регистрация: 05.10.2016
Сообщений: 16,651
|
||
| 27.02.2021, 14:38 | ||
![]() Может вам следует проконсультироваться и переформировать вашу задачку ... А то получается: - "Я хочу что бы всё было хорошо - но не знаю как ....."
0
|
||
|
1 / 1 / 0
Регистрация: 21.01.2021
Сообщений: 183
|
|
| 27.02.2021, 17:11 [ТС] | |
|
Eugene-LS, Лучший способ демонстрации своей крутизны - перейти на личности.
Отвечаю. "Отмазка" следующая от тех, кто меня выше : "Ты отправишь кому-то кусок нашей базы, а потом получишь ее обратно. Ты сможешь определить, что там будет в их кодах кроме того, что нужно нам?" Это я тут от лени выворачиваюсь всем объяснить, что нужно в виде аналога повторить самим ручками в исходной базе. На содержательные вопросы тоже ответил, но ответ не появился, может еще на модерации.
0
|
|
|
Модератор
6231 / 2909 / 708
Регистрация: 12.06.2016
Сообщений: 7,839
|
|||
| 27.02.2021, 17:25 | |||
|
Все сообщения появляются в теме сразу. Вам предлагалось хотя бы структуры пустых таблиц построить, чтобы не пришлось отвечающим заниматься этим.
0
|
|||
|
1 / 1 / 0
Регистрация: 21.01.2021
Сообщений: 183
|
|
| 27.02.2021, 17:31 [ТС] | |
|
Звиняйте снова, что не так. Сообщения не видел, сейчас вижу. Я тут вобще советский летчик, потерявший зрение от
раны в смертельном бою с фашистами (это коды гады). Меня ведут на посадку по радио с родного КП. Погибну, но не сдамся, блин. На вопросы щас отвечу.
0
|
|
|
13270 / 5947 / 1529
Регистрация: 05.10.2016
Сообщений: 16,651
|
|
| 27.02.2021, 17:34 | |
|
0
|
|
|
1 / 1 / 0
Регистрация: 21.01.2021
Сообщений: 183
|
|
| 27.02.2021, 17:36 [ТС] | |
|
Capi, Как открыть Модуль1 ?
0
|
|
|
Модератор
6231 / 2909 / 708
Регистрация: 12.06.2016
Сообщений: 7,839
|
|||
| 27.02.2021, 17:40 | |||
|
Там выбрать пункт Конструктор.
0
|
|||
|
1 / 1 / 0
Регистрация: 21.01.2021
Сообщений: 183
|
||
| 27.02.2021, 17:50 [ТС] | ||
|
Добавлено через 2 минуты Capi, Разбираюсь в подробностях. В Excel тоже ничего нет. Это я написал, т. к. нам проще в ней делать формулы. Попробую щас там слепить таблицу с ними. Добавлено через 7 минут Про таблицу Детали писал не потому, что надо в ней сохранять, а думал оттуда могут браться Коэффы, которые, что ли надо туда вводить (думал).
0
|
||
|
Модератор
6231 / 2909 / 708
Регистрация: 12.06.2016
Сообщений: 7,839
|
|||
| 27.02.2021, 17:50 | |||
|
Со всеми 2500 записями.
0
|
|||
|
1 / 1 / 0
Регистрация: 21.01.2021
Сообщений: 183
|
|
| 27.02.2021, 18:04 [ТС] | |
|
Открыл Модуль 1, как приказано. Там код:
SELECT Детали.*, Func_Koeff([Код1],[Модиф]) AS Коэфф1 FROM Детали; Не проясните ли, куда ставить Коэффициенты и код из сообщения #5 ?
0
|
|
|
Модератор
6231 / 2909 / 708
Регистрация: 12.06.2016
Сообщений: 7,839
|
||
| 27.02.2021, 18:08 | ||
|
А, во-вторых, это SQL-текст запроса Запрос1, а вовсе не VBA-код модуля Module1.
0
|
||
|
1 / 1 / 0
Регистрация: 21.01.2021
Сообщений: 183
|
||
| 27.02.2021, 18:13 [ТС] | ||
|
0
|
||
|
Модератор
6231 / 2909 / 708
Регистрация: 12.06.2016
Сообщений: 7,839
|
||
| 27.02.2021, 18:18 | ||
|
Да чёрт...
Правой кнопкой мыши клацайте по названию модуля Module1. А не по названию запроса Запрос1. На чём клацаете, то и откроется. Добавлено через 2 минуты Всё уже поставлено. Там функция вызывается, которая находиться в модуле.
0
|
||
|
1 / 1 / 0
Регистрация: 21.01.2021
Сообщений: 183
|
||||||
| 27.02.2021, 18:24 [ТС] | ||||||
|
У меня не был виден раздел Модули, нашел.
Корректировать для других Коэффов код так ? :
0
|
||||||
|
Модератор
6231 / 2909 / 708
Регистрация: 12.06.2016
Сообщений: 7,839
|
|
| 27.02.2021, 18:29 | |
|
Так.
Но лучше, в десятый раз повторяю, таблица коэффициентов. novyi, Если Вы настолько далеки от всего этого, зачем Вы взялись?
0
|
|
| 27.02.2021, 18:29 | |
|
Как составить сложный запрос из многих таблиц Поиск пользователя по разным полям Поиск записей в бд по разным полям
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Запустил конкурс "тем и промптов для текстовых квестов созданных почти чисто ИИ"
Adler 06.10.2026
Всем привет!
За последние три-четыре дня я создал более 16 текстовых квестовых игр используя преимущественно по одному запросу к ИИ на игру. Мне так понравилось смотреть все ветки/ сцены во всех. . .
|
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык.
Возвращает он вот это:
https:/ / i. **********/ vqBWLe2. png
Нужную строчку в 3й колонке просто выдумал. .
Это. . .
|
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor.
Это. . .
|
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js.
В помощники взял Яндекс-Алису.
Было создано три зала на разные интересы.
исторические и ретро
сериал Хичкок. . .
|
|
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
|
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#.
Название изменил на ColorStep.
Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
|
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами:
- ВидТО (СправочникСсылка. ВидыТО);
- ВидГСМ. . .
|
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала.
Ниже прикреплён. . .
|