powered by simpleCommunicator - 2.0.54     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Никак не получается написать запрос
4 сообщений из 4, страница 1 из 1
Никак не получается написать запрос
    #39346993
test_d1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день!

Есть база данных, состоящая из трех таблиц: Записи, Отделы, Должности. Во вложении файл - Схема.

Данные в основном вносятся в таблицу Записи. В две остальные вносятся только изменения построчно с указанием текущей даты изменения. Например, в таблице Должности вместо Васи стал Петя, и помимо строки (1, Вася, Ведущий специалист, Начальник, 01.05.2016) появилась еще одна строка (1, Петя , Ведущий специалист, Начальник, 14.11.2016 ).

Как написать SQL-скрипт, чтобы он подтягивал все данные из таблицы Записи, и эти записи джойнил с таблицами Отделы и Должности по столбцам Первичный ключ, и главное, чтобы скрипт подтягивал данные из этих двух таблиц по самой близкой дате к дате из таблицы Записи?

Вот пока только так получается:

SELECT Записи.*
, Должности.Главный_специалист
, Должности.Ведущий_специалист
, Должности.Начальник
, Отделы.Филиал
FROM Отделы INNER JOIN (Должности INNER JOIN Записи ON Должности.Первичный_ключ = Записи.Первичный_ключ)
ON (Отделы.Первичный_ключ = Записи.Первичный_ключ)
AND (Отделы.Первичный_ключ = Должности.Первичный_ключ);

Кто-нибудь примерно понял что-нибудь?:) Я не айтишник, не судите строго.
...
Рейтинг: 0 / 0
Никак не получается написать запрос
    #39347000
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
test_d1чтобы скрипт подтягивал данные из этих двух таблиц по самой близкой дате к дате из таблицы Записи?Сформулируйте этот момент более точно.

test_d1Во вложении файл - Схема.Странненькая какая-то схема...
test_d1Например, в таблице Должности вместо Васи стал Петя, и помимо строки (1, Вася, Ведущий специалист, Начальник, 01.05.2016) появилась еще одна строка (1, Петя , Ведущий специалист, Начальник, 14.11.2016 ).И как Вы собираетесь полю Первичный ключ (ключевому, между прочим) дать одинаковые значения, равные единице?
...
Рейтинг: 0 / 0
Никак не получается написать запрос
    #39347021
test_d1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Akinatest_d1чтобы скрипт подтягивал данные из этих двух таблиц по самой близкой дате к дате из таблицы Записи?Сформулируйте этот момент более точно.
Нужно, чтобы к данным из таблицы Записи привязывались только те данные из таблиц Должности и Отделы, которые соответствовали бы дате из таблицы Записи. Т.е. не брались старые строки из этих двух таблиц (Должности и Отделы), а брались данные на даты, которые указаны в каждой строке разные из таблицы Записи:) Попробую логику объяснить - (select max(Отделы.Дата) from Отделы where Отделы.Дата<=Записи.Дата_внесения), и так для каждой строки.

Akinatest_d1Во вложении файл - Схема.Странненькая какая-то схема...
Согласен, кривая. А почему? Мне для образовательных целей.

Akinatest_d1Например, в таблице Должности вместо Васи стал Петя, и помимо строки (1, Вася, Ведущий специалист, Начальник, 01.05.2016) появилась еще одна строка (1, Петя , Ведущий специалист, Начальник, 14.11.2016 ).И как Вы собираетесь полю Первичный ключ (ключевому, между прочим) дать одинаковые значения, равные единице?
Тут я просто сделал это поле первичным ключом, чтобы запрос через конструктор запросов сделать:) Так в таблицах Должности и Отделы поле "Первичный_ключ" - не индексируемый:) Единственный ключ есть у таблицы Записи - это поле Первичный_ключ_2. Косо, криво, лишь бы живо:)

Спасибо.
...
Рейтинг: 0 / 0
Никак не получается написать запрос
    #39347095
test_d1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2112Отделы - Справочник (ну, типа - Сущность)
Должности - Справочник он тож..))

в Справочниках - не нужны Даты
по крайней мере на Вашем Уровне ... сорри
Уровень - это уже что-то:)
Я просто хотел, чтобы было удобней заполнять.
Ладно, сделаю по-другому.
Всем спасибо.
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Никак не получается написать запрос
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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