Гость
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Запрос на вывод только тех столбцов из таблицы, название которых указанно в другой таблице / 7 сообщений из 7, страница 1 из 1
13.01.2019, 13:07
    #39758939
mikle08es2
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запрос на вывод только тех столбцов из таблицы, название которых указанно в другой таблице
Дано:
1)Таблица столбцы в которой называются [Дата],[Наименование потребителя],[1],[2],[3]....[24], где 1,2,3...24 часы суток.
В этой таблице стоят значения электропотребления по конкретным потребителям за любую дату в конкретный час суток.
2)Талица столбцы в которой называются [Дата],[Начальный час],[Конечный час](значения в столбцах начальный и конечный час стоят цифрами от 1 до 24 соответственно)
Можно ли сделать запрос результатом которого будет являться значения электропотребления только в те часы соответствующих суток, которые указаны в таблице 2? То есть нужно ввести те столбцы из одной таблицы, названия которых указанны в другой таблице.
...
Рейтинг: 0 / 0
14.01.2019, 01:16
    #39759143
vmag
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запрос на вывод только тех столбцов из таблицы, название которых указанно в другой таблице
mikle08es2,

можно... попробовать пойти в раздел "работа"
...
Рейтинг: 0 / 0
14.01.2019, 13:13
    #39759268
Запрос на вывод только тех столбцов из таблицы, название которых указанно в другой таблице
Эта задача решается редактированием текста запроса в VBA процедуре.
Но вы, для начала, объясните, где собираетесь использовать результат запроса и почему Таблица1 именно в таком виде, а не, например, [Дата],[Наименование потребителя], [Час],[Показания]? А также, сколько записей в Таблица1.
...
Рейтинг: 0 / 0
14.01.2019, 14:29
    #39759329
sdku
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запрос на вывод только тех столбцов из таблицы, название которых указанно в другой таблице
mikle08es2,
Я вообще не понимаю:а ЗАЧЕМ нужна вторая таблица?
Она,по сути,является формой ввода для запроса с параметрами,источником которого является 1 таблица.
Как-то так:
...
Рейтинг: 0 / 0
14.01.2019, 14:33
    #39759333
sdku
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запрос на вывод только тех столбцов из таблицы, название которых указанно в другой таблице
Прошу прощения-не тот файл:
...
Рейтинг: 0 / 0
14.01.2019, 14:38
    #39759338
sdku
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запрос на вывод только тех столбцов из таблицы, название которых указанно в другой таблице
вдогонку:изначально запрос создаете любой,хоть с одним полем,лишь бы в БД был объект "запрос1"
...
Рейтинг: 0 / 0
14.01.2019, 14:57
    #39759350
Swa111
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запрос на вывод только тех столбцов из таблицы, название которых указанно в другой таблице
mikle08es2,

В целом конечно можно, но это будет жесть, пересмотрите структуру таблиц

На мой взгляд луше сделать так
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
"Потребители"
  Код
  Наименование потребителя
"Энергопотребление"
  Код_Потребителя
  Дата_Время  --Дата время снятия показания
  Показание

С такой структурой будет проще работать.

Ну и собственно не много жести
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
select
  [Показания].[Дата],
  max(iif(1 between [Начальный час] and [Конечный час], [1], 0)) as [1],
  max(iif(2 between [Начальный час] and [Конечный час], [2], 0)) as [2],
  max(iif(3 between [Начальный час] and [Конечный час], [3], 0)) as [3],
  max(iif(4 between [Начальный час] and [Конечный час], [4], 0)) as [4],
  max(iif(5 between [Начальный час] and [Конечный час], [5], 0)) as [5],
  max(iif(6 between [Начальный час] and [Конечный час], [6], 0)) as [6],
  max(iif(7 between [Начальный час] and [Конечный час], [7], 0)) as [7],
  max(iif(8 between [Начальный час] and [Конечный час], [8], 0)) as [8],
  max(iif(9 between [Начальный час] and [Конечный час], [9], 0)) as [9],
  max(iif(10 between [Начальный час] and [Конечный час], [10], 0)) as [10],
  max(iif(11 between [Начальный час] and [Конечный час], [11], 0)) as [11],
  max(iif(12 between [Начальный час] and [Конечный час], [12], 0)) as [12],
  max(iif(13 between [Начальный час] and [Конечный час], [13], 0)) as [13],
  max(iif(14 between [Начальный час] and [Конечный час], [14], 0)) as [14],
  max(iif(15 between [Начальный час] and [Конечный час], [15], 0)) as [15],
  max(iif(16 between [Начальный час] and [Конечный час], [16], 0)) as [16],
  max(iif(17 between [Начальный час] and [Конечный час], [17], 0)) as [17],
  max(iif(18 between [Начальный час] and [Конечный час], [18], 0)) as [18],
  max(iif(19 between [Начальный час] and [Конечный час], [19], 0)) as [19],
  max(iif(20 between [Начальный час] and [Конечный час], [20], 0)) as [20],
  max(iif(21 between [Начальный час] and [Конечный час], [21], 0)) as [21],
  max(iif(22 between [Начальный час] and [Конечный час], [22], 0)) as [22],
  max(iif(23 between [Начальный час] and [Конечный час], [23], 0)) as [23],
  max(iif(24 between [Начальный час] and [Конечный час], [24], 0)) as [24]
from 
  [Параметры]
  inner join [Показания] on [Параметры].[Дата] = [Показания].[Дата]
Group By
  [Показания].[Дата]
  

...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Запрос на вывод только тех столбцов из таблицы, название которых указанно в другой таблице / 7 сообщений из 7, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]