|
Вывести в поле запроса значение поля из другой таблицы
|
|||
---|---|---|---|
#18+
Здравствуйте все. К основной таблице с ключем КОД построен основной запрос. В одно из его полей нужно вывести последнее (по дате например) значение (соответствующее ключу КОД) из второй таблицы. Возможные варианты: 1. Создать запрос ко второй таблице с сортировкой по дате и обратиться к этому запросу функцией DLookUp, помещенной в требуемое поле основного запроса. 2. Использовать для этой цели подчиненный запрос, поместив его в требуемое поле (в этом случае, если не ошибаюсь, основной запрос утратит свойство обновляемости). Возможно ли еще каким-то образом и какой вариант предпочтителен? Благодарен заранее. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.06.2018, 11:35 |
|
Вывести в поле запроса значение поля из другой таблицы
|
|||
---|---|---|---|
#18+
А сделать функцию и подставить её в поле? ... |
|||
:
Нравится:
Не нравится:
|
|||
13.06.2018, 12:07 |
|
Вывести в поле запроса значение поля из другой таблицы
|
|||
---|---|---|---|
#18+
Игорь С, где вы будете использовать -запрос? Если в форме или отчете, то лучше вычислять значение там. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.06.2018, 14:39 |
|
Вывести в поле запроса значение поля из другой таблицы
|
|||
---|---|---|---|
#18+
JossА сделать функцию и подставить её в поле? Спасибо Joss, если я сделаю функцию, то для обращения ко второму запросу ей понадобится dlookup, так кажется? ... |
|||
:
Нравится:
Не нравится:
|
|||
13.06.2018, 15:30 |
|
Вывести в поле запроса значение поля из другой таблицы
|
|||
---|---|---|---|
#18+
Кривцов АнатолийИгорь С, где вы будете использовать -запрос? Если в форме или отчете, то лучше вычислять значение там. Спасибо, Анатолий. Да, я использую запрос для формы (ленточной) и там в поле следует поставить dlookup, а что еще? То есть и в том и в другом случае мы использует DlookUp? Так что-ли? ... |
|||
:
Нравится:
Не нравится:
|
|||
13.06.2018, 15:33 |
|
Вывести в поле запроса значение поля из другой таблицы
|
|||
---|---|---|---|
#18+
Игорь СJossА сделать функцию и подставить её в поле? Спасибо Joss, если я сделаю функцию, то для обращения ко второму запросу ей понадобится dlookup, так кажется? Скорее всего ДА. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.06.2018, 15:40 |
|
Вывести в поле запроса значение поля из другой таблицы
|
|||
---|---|---|---|
#18+
Вообще-то из своего не очень большого опыта знаю (хотя не уверен), что DLookUp подтормаживает запросы, хотя сохраняет их обновляемыми ... |
|||
:
Нравится:
Не нравится:
|
|||
13.06.2018, 15:48 |
|
Вывести в поле запроса значение поля из другой таблицы
|
|||
---|---|---|---|
#18+
По-моему есть еще один путь. Перед запуском основного запроса создать таблицу, куда будут записано поле последних данных вспомогательного запроса. Но не могу сказать насколько это эффективно. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.06.2018, 15:51 |
|
Вывести в поле запроса значение поля из другой таблицы
|
|||
---|---|---|---|
#18+
Игорь С, кроме DLookUp есть ещё другие агрегатные функции (DLast, DCount, DMax), и лучше обращаться непосредственно к таблице. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.06.2018, 16:15 |
|
Вывести в поле запроса значение поля из другой таблицы
|
|||
---|---|---|---|
#18+
Игорь СВообще-то из своего не очень большого опыта знаю (хотя не уверен), что DLookUp подтормаживает запросы, хотя сохраняет их обновляемымиВот что написано в HELPе:"Хотя функция DLookup позволят проводить поиск значений во внешней таблице, обычно более эффективным приемом оказывается создание запроса (то бишь набора записей), содержащего все необходимые поля, с последующим созданием формы или отчета на базе этого запроса." Конечно использование Dlookup для создания набора записей-это дебилизм,но если Вам надо вычислить конкретное значение одного поля в одной (активной)записи,то любая доменная функция зачастую работает быстрее (особенно на больших таблицах-можете замерить время выполнения функции и запроса), т.к. после нахождения первой записи соответствующей критерию, функция прекращает работу. Кстати в Вашем случае подойдет Dmax ... |
|||
:
Нравится:
Не нравится:
|
|||
13.06.2018, 17:02 |
|
Вывести в поле запроса значение поля из другой таблицы
|
|||
---|---|---|---|
#18+
sdkuИгорь СВообще-то из своего не очень большого опыта знаю (хотя не уверен), что DLookUp подтормаживает запросы, хотя сохраняет их обновляемымиВот что написано в HELPе:"Хотя функция DLookup позволят проводить поиск значений во внешней таблице, обычно более эффективным приемом оказывается создание запроса (то бишь набора записей), содержащего все необходимые поля, с последующим созданием формы или отчета на базе этого запроса." Конечно использование Dlookup для создания набора записей-это дебилизм,но если Вам надо вычислить конкретное значение одного поля в одной (активной)записи,то любая доменная функция зачастую работает быстрее (особенно на больших таблицах-можете замерить время выполнения функции и запроса), т.к. после нахождения первой записи соответствующей критерию, функция прекращает работу. Кстати в Вашем случае подойдет Dmax Спасибо ... |
|||
:
Нравится:
Не нравится:
|
|||
14.06.2018, 11:56 |
|
Вывести в поле запроса значение поля из другой таблицы
|
|||
---|---|---|---|
#18+
Во-первых: речь шла не об использовании DLookUp для создания набора записи, а о нахождении конкретного значения некоего поля, соответствующего "самой свежей" дате в другом поле таблицы Во-вторых: DMax ищет что-то максимальное в поле набора записей, нам же нужно найти значение поля, при дополнительном условии - что другое поле соответствует дате самого "свежего" заказа для конкретного исполнителя. Т.е нужно использовать DlookUp с дополнительными условиями отбора кода исполнителя и "свежайшей" даты. К чему применять DLookUp - к исходной таблице, к промежуточному запросу или к промежуточной таблице - вот в чем был вопрос, а также о возможных иных способах решения. Спасибо за внимание. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.06.2018, 12:14 |
|
Вывести в поле запроса значение поля из другой таблицы
|
|||
---|---|---|---|
#18+
Я бы решал задачу двумя запросами. 1. Выстраивал все записи в порядке уменьшения даты 2. Брал первую запись из получившегося набора для конкретного исполнителя ... |
|||
:
Нравится:
Не нравится:
|
|||
14.06.2018, 12:43 |
|
Вывести в поле запроса значение поля из другой таблицы
|
|||
---|---|---|---|
#18+
Игорь С... нужно найти значение поля, при дополнительном условии - что другое поле соответствует дате самого "свежего" заказа для конкретного исполнителя. Т.е нужно использовать DlookUp с дополнительными условиями отбора кода исполнителя и "свежайшей" даты... . Код: sql 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
14.06.2018, 13:42 |
|
|
start [/forum/topic.php?fid=45&fpage=49&tid=1611369]: |
0ms |
get settings: |
8ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
36ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
48ms |
get tp. blocked users: |
2ms |
others: | 13ms |
total: | 138ms |
0 / 0 |