Форум программистов, компьютерный форум, киберфорум
Microsoft Access
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.86/7: Рейтинг темы: голосов - 7, средняя оценка - 4.86
0 / 0 / 0
Регистрация: 15.02.2019
Сообщений: 31
1

Запрос с отдельными столбцами по разным параметрам

21.08.2019, 14:17. Показов 1417. Ответов 13
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый день.
Просьба подсказать как правильно сделать запрос.
исходная таблица устроена примерно так:
id_прибора объект название прибора параметр прибора

В запросе мне нужны следующие столбцы
....
объект название прибора при параметре прибора=1 название прибора при параметре прибора=2
....
Как пример, например, исходная таблица с счетчиками воды, а запрос
квартира горячая_вода холодная
28 123 456
29   789 123
Спасибо!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
21.08.2019, 14:17
Ответы с готовыми решениями:

Сортировка List<T> по разным параметрам
Здравствуйте у меня такой вопрос я создал класс с тремя полями данных разного типа class...

Сравнить в Excel две таблицы по разным параметрам
Добрый всем день! помогите пожалуйста, есть две таблицы с разным кол-вом столбцов (14 и 8) и...

Класс: Задача состоит в том, чтобы уметь сортировать по разным параметрам объекты класса автомобиль.
Сталкнулся с такой наверное обычной задачей. но нформации понятной мне в интеренте не нашел. Имею...

Запрос по параметрам
Здравствуйте! Имеется некоторая таблица(назовём её table)). У неё есть колонки id, text и...

13
10928 / 5616 / 1429
Регистрация: 05.10.2016
Сообщений: 15,895
21.08.2019, 18:07 2
Цитата Сообщение от vovanvv Посмотреть сообщение
Просьба подсказать как правильно сделать запрос.
Инфы для решения маловато.
Примерчик не помешал бы (мечтательно так) ...

Почитайте пожалуйста Правила раздела, и старайтесь, насколько это возможно, следовать им.

Если необходимо:
01. Создайте публикуемую версию вашего приложения, если там есть конфиденциальные данные - забейте их ничего не значащими, в достаточном для понимания объёме (несколько записей).
02. Выполните сжатие БД стандартными средствами
03. Проверьте работоспособность публикуемого
04. Сожмите ваше приложение архиватором (Zip, RAR)
05. Опубликуйте полученное на форуме с описанием точки входа (как добраться до вашей траблы) + подробное описание (пара - тройка предложений) того чего вы хотите в результате.

Или просто:
Выкладывайте БД на форум. Попробуем разобраться. Только точно укажите куда смотреть, на что нажимать, что надо увидеть и как должно быть.
0
0 / 0 / 0
Регистрация: 15.02.2019
Сообщений: 31
22.08.2019, 09:32  [ТС] 3
Пароль 123.
Запрос "АКС РВС".
Основной источник - таблица РВС и таблица а_график.
Задача такая - в запросе на каждый резервуар должны быть 2 столбца с приборами из a_график.
В одном столбце приборы, у значение "измеряемый параметр" "уровень общий", в другом столбце "уровень межфазный"
В экселе в power pivot такое у меня получалось легко, а здесь что-то призадумался, хотя должно все быть просто.
В примере у меня эти свойства прописаны только для двух РВС.
---
Еще буду благодарен объективной оценке и ЦУ по поводу БД в части оформления форм, написанных запросов и коду vba.
Я не программист, просто хочу использовать данную БД в своей работе.
Вложения
Тип файла: zip База КИПиА.zip (2.39 Мб, 6 просмотров)
0
Мы один, давай на "ты"
3632 / 1335 / 326
Регистрация: 16.06.2016
Сообщений: 3,184
22.08.2019, 10:13 4
vovanvv, используй перекрёстный запрос. В акцесс есть мастер создания перекрёстных запросов.
0
10928 / 5616 / 1429
Регистрация: 05.10.2016
Сообщений: 15,895
22.08.2019, 12:19 5
Цитата Сообщение от vovanvv Посмотреть сообщение
Еще буду благодарен объективной оценке и ЦУ по поводу БД в части оформления форм, написанных запросов и коду vba.
Ну формы и код разбирать долго, простите занят, а вот структуру вашу мельком посмотрел.
Итак:
01. Пробелы и спец символы в названиях объектов БД (особенно в таблицах и их полях), пробелы замените на символ подчёркивания "_"
02. Поля подстановки в таблицах - лучше от них избавиться
03. Размерность полей - все текстовые поля в 255 символов а дробные в Double - меняйте, для дробных значений практ. всегда достаточно Currency а для целых Integer - почитайте справку по размерностям.

Пока всё.
1
0 / 0 / 0
Регистрация: 15.02.2019
Сообщений: 31
22.08.2019, 12:34  [ТС] 6
Eugene-LS,
Спасибо.
01. новые таблицы делаю с _, по старым тоже надо будет исправлять, но тут много кода потянет..
02. чем плохи поля подстановки в таблицах? Я вот вижу плюс в том, что и в запросе могу выводить числовое значение, оно подставляется текстовым и потом из vba обращаться к результатом запроса по числовому значению, а не делать в запросе сразу два поля, а одно потом скрывать.
03. будем пытаться оптимизировать.

И все-таки по сабжу?
0
10928 / 5616 / 1429
Регистрация: 05.10.2016
Сообщений: 15,895
22.08.2019, 12:46 7
Цитата Сообщение от vovanvv Посмотреть сообщение
чем плохи поля подстановки в таблицах?
На эту тему "тома" написаны, и тут и в сети.
Например:
01. The Evils of Lookup Fields in Tables
02. Поля подстановки в таблицах - MS Access

И все-таки по сабжу?
Ответ от Панург - не помог?
0
0 / 0 / 0
Регистрация: 15.02.2019
Сообщений: 31
22.08.2019, 12:55  [ТС] 8
Eugene-LS, не совсем..
не могу подобрать какой-то подходящий рабочий пример..
а так как я понял это должно делаться, ацесс ругается..
0
10928 / 5616 / 1429
Регистрация: 05.10.2016
Сообщений: 15,895
22.08.2019, 13:14 9
Цитата Сообщение от vovanvv Посмотреть сообщение
а так как я понял это должно делаться, ацесс ругается..
Шас гляну .... но не обещаю ничего.
Кстати мне понравилось:
Вы публикуете в сети запароленный архив и рядом пишите пароль - где смысл сего действа ?

Добавлено через 12 минут
vovanvv, переведите пожалуйста на понятный мне язык ваше выражение:
- "Основной источник - таблица РВС и таблица а_график. Задача такая - в запросе на каждый резервуар должны быть 2 столбца с приборами из a_график. В одном столбце приборы, у значение "измеряемый параметр" "уровень общий", в другом столбце "уровень межфазный""

01. Я таких полей у вас не наблюдаю ("измеряемый параметр").
02. Непонятно как связаны таблицы "РВС" и "а_график".

Чем яснее вы описываете траблу - те выше вероятность решения, хотя... никто не обещал что будет легко ...
0
10928 / 5616 / 1429
Регистрация: 05.10.2016
Сообщений: 15,895
22.08.2019, 13:22 10
vovanvv, BTW - Это ваши библиотечные ссылки, при запуске на MSA 2010 x86.
Вас ничего не смущает???
Миниатюры
Запрос с отдельными столбцами по разным параметрам  
0
0 / 0 / 0
Регистрация: 15.02.2019
Сообщений: 31
22.08.2019, 13:41  [ТС] 11
Eugene-LS, проблема в корпоративных службах, которые бдят и если отлавливают отправляемый файл, то открыть его не смогут.. Потому что если откроют, найдут что-то нарушаемое..
Если же все-таки откроют логи и зайдут на сию страницу... тогда да.. смысла иметь не будет
Прикрепил картинки с результатом выполнения запроса АСК РВС, и его в конструкторе.
Вот его SQL:
SQL
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
SELECT РВС.id_RVS, a_Цеха.назв, a_Объекты.[наименование объекта], РВС.[№РВС],
 РВС.Объем, РВС.Принадлежность, РВС.Статус, a_instruments.name_instr,
 a_график.Измеряемый_параметр, a_график.поз_ФСА
 
FROM a_instruments 
INNER JOIN ((a_Цеха
 INNER JOIN (a_Объекты
 INNER JOIN (a_Площадки
 INNER JOIN РВС
   ON a_Площадки.[id площадки] = РВС.id_площадки) 
   ON a_Объекты.[] = a_Площадки.[id объекта])
   ON a_Цеха.[] = a_Объекты.Цех2)
 INNER JOIN a_график
   ON a_Площадки.[id площадки] = a_график.ID_площадки)
   ON a_instruments.id_instr = a_график.id_instr
WHERE (((a_график.Измеряемый_параметр)=3 OR (a_график.Измеряемый_параметр)=4));
Мне нужно, чтобы было два столбца с наименованием уровнемеров.
Один бы назывался "Уровень общий" и в нем бы были наименования уровнемеров, у которых "Измеряемый_параметр"=3.
Второй бы назывался "Уровень межфазный" и в нем бы были наименования уровнемеров, у которых "Измеряемый_параметр"=4.
Конечный вариант как на приложенной картинке с экселя
Миниатюры
Запрос с отдельными столбцами по разным параметрам   Запрос с отдельными столбцами по разным параметрам   Запрос с отдельными столбцами по разным параметрам  

0
10928 / 5616 / 1429
Регистрация: 05.10.2016
Сообщений: 15,895
22.08.2019, 19:14 12
Цитата Сообщение от vovanvv Посмотреть сообщение
Прикрепил картинки с результатом выполнения запроса АСК РВС, и его в конструкторе.
Вот его SQL:
Уже лучше - сейчас у меня нет времени разбирать, может позже (вечерком).
...
А может кто из добрых форумчан вам ответит ранее меня.

Успехов!

Добавлено через 5 часов 25 минут
Цитата Сообщение от vovanvv Посмотреть сообщение
Мне нужно, чтобы было два столбца с наименованием уровнемеров.
Один бы назывался "Уровень общий" и в нем бы были наименования уровнемеров, у которых "Измеряемый_параметр"=3.
Второй бы назывался "Уровень межфазный" и в нем бы были наименования уровнемеров, у которых "Измеряемый_параметр"=4.
Конечный вариант как на приложенной картинке с экселя
Ну пишем в запросе:
SQL
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
SELECT РВС.id_RVS, a_Цеха.назв, a_Объекты.[наименование объекта],
 РВС.[№РВС], РВС.Объем, РВС.Принадлежность, РВС.Статус,
 a_instruments.name_instr, a_график.Измеряемый_параметр, a_график.поз_ФСА,
 IIf([Измеряемый_параметр]=3,"Уровень общий ???","") AS [Уровень общий],
 IIf([Измеряемый_параметр]=4,"Уровень межфазный  ???","") AS [Уровень межфазный]
 
FROM a_instruments INNER JOIN ((a_Цеха
 INNER JOIN (a_Объекты
 INNER JOIN (a_Площадки
 INNER JOIN РВС
 ON a_Площадки.[id площадки] = РВС.id_площадки)
 ON a_Объекты.[] = a_Площадки.[id объекта])
 ON a_Цеха.[] = a_Объекты.Цех2)
 INNER JOIN a_график
 ON a_Площадки.[id площадки] = a_график.ID_площадки)
 ON a_instruments.id_instr = a_график.id_instr
 
WHERE (((a_график.Измеряемый_параметр)=3 OR (a_график.Измеряемый_параметр)=4));
Только пока не понятно откуда брать значения для "Уровень общий ???" и "Уровень межфазный" ???" ...
Возможно я чего не так понял, но и вы обьесняете на непонятном пока мне языке.

Всё должно быть чётко и просто, примерно так:
В поле или полях (названия) запроса (Название), я хочу видеть данные из (описание откуда) , по связи с (описание связи).
...
А "нырять" в бассейн вашей задачки ну никакой возможности пока нет.
0
0 / 0 / 0
Регистрация: 15.02.2019
Сообщений: 31
23.08.2019, 08:17  [ТС] 13
Eugene-LS, спасибо, получилось.
в IIF вставил a_instruments.name_instr.
Вообще, почему-то считал, что IIF только в Where вставляется
0
0 / 0 / 0
Регистрация: 15.02.2019
Сообщений: 31
23.08.2019, 08:29  [ТС] 14
Один ньюанс остался - чтобы один РВС занимал одну строку.
То есть на примере - одна 43 строка с двумя заполненными последними столбцами
Миниатюры
Запрос с отдельными столбцами по разным параметрам  
0
23.08.2019, 08:29
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
23.08.2019, 08:29
Помогаю со студенческими работами здесь

Запрос по двум параметрам
Доброго времени. Я новичок, так что не пинайте сразу. Везде много читал по форумам, но так и не...

Запрос к БД по двум параметрам
$sql = mysql_query(&quot;SELECT * FROM `people` WHERE `first_name` LIKE '%&quot;.$fn.&quot;%' &quot;); Это...

Динамический запрос с выборкой по параметрам
Итак, снова я со своими проблемами, в очередной раз перелопатил по инета, но ничего не нашел!...

SQL запрос - свертка по параметрам
Доброго времени суток, уважаемые форумчане. Не очень силен в SQL запросах, прошу подсказать :)...

Запрос на выборку, по нескольким параметрам
Есть таблица: CREATE TABLE `table` ( `id` int(11) NOT NULL AUTO_INCREMENT, `property`...

SQL-запрос (поиск по нескольким параметрам)
У меня вопрос. Есть форма ввода параметров поиска. В нем есть поле Modell. Как должна выглядеть...


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

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Новые блоги и статьи
Какой язык программировани­я лучший для разработки нейронных сетей
InfoMaster 20.01.2025
В современном мире технологий искусственные нейронные сети становятся неотъемлемой частью множества инновационных решений, от распознавания речи до автоматического управления транспортными. . .
Как подключить JavaScript файл в другом JavaScript файле
InfoMaster 20.01.2025
В современной веб-разработке организация кодовой базы играет ключевую роль в создании масштабируемых и поддерживаемых приложений. Модульность и правильное структурирование кода стали неотъемлемыми. . .
Как откатить изменения в исходниках, не внесенные в Git
InfoMaster 20.01.2025
При работе с системой контроля версий Git разработчики часто сталкиваются с необходимостью отменить внесенные изменения в исходном коде. Особенно актуальной становится ситуация, когда изменения еще. . .
В чем разница между px, in, mm, pt, dip, dp, sp
InfoMaster 20.01.2025
В мире цифрового дизайна и разработки интерфейсов правильный выбор единиц измерения играет ключевую роль в создании качественного пользовательского опыта. История развития систем измерений для. . .
Как изменить адрес удалённого репозитория (origin) в Git
InfoMaster 20.01.2025
В терминологии Git термин origin является стандартным именем для основного удаленного репозитория, с которым взаимодействует локальная копия проекта. Когда разработчик клонирует репозиторий с. . .
Как переместить последние коммиты в новую ветку (branch) в Git
InfoMaster 20.01.2025
При работе над проектом часто возникают ситуации, когда необходимо изолировать определенные изменения от основной линии разработки. Это может быть связано с экспериментальными функциями, исправлением. . .
Как вернуть результат из асинхронной функции в JavaScript
InfoMaster 20.01.2025
Асинхронное программирование представляет собой фундаментальную концепцию в JavaScript, которая позволяет выполнять длительные операции без блокировки основного потока выполнения программы. В. . .
Какой локальный веб-сервер выбрать
InfoMaster 19.01.2025
В современной веб-разработке локальные веб-серверы играют ключевую роль, предоставляя разработчикам надежную среду для создания, тестирования и отладки веб-приложений без необходимости использования. . .
Почему планшеты и iPad уже не так популярны, как раньше
InfoMaster 19.01.2025
Эра революционных инноваций История планшетов началась задолго до того, как эти устройства стали привычными спутниками нашей повседневной жизни. В начале 1990-х годов появились первые прототипы,. . .
Как самому прошить BIOS ноутбука
InfoMaster 19.01.2025
BIOS (Basic Input/ Output System) представляет собой важнейший компонент любого компьютера или ноутбука, который обеспечивает базовое взаимодействие между аппаратным и программным обеспечением. . .
Какой Linux выбрать для домашнего компьютера
InfoMaster 19.01.2025
Современные реалии выбора операционной системы В современном мире выбор операционной системы для домашнего компьютера становится все более важным решением, которое может существенно повлиять на. . .
Как объединить два словаря одним выражением в Python
InfoMaster 19.01.2025
В мире программирования на Python работа со словарями является неотъемлемой частью разработки. Словари представляют собой мощный инструмент для хранения и обработки данных в формате "ключ-значение". . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru