21 / 4 / 0
Регистрация: 03.01.2017
Сообщений: 127
|
||||||
1 | ||||||
Запрос на выборку строки с максимальной датой06.04.2017, 20:54. Показов 6412. Ответов 32
Метки нет (Все метки)
Коллеги, привет!
Буду рад если сможете помочь! Необходимо запросом выбирать данные из таблицы TEST_TABLE в TARGET_TEST_TABLE. Структура таблиц одинаковая - три столбца - ID, Param, Date, Autonumber В таблицу TEST_TABLE сваливаются активности по ID, соответсвенно ID могут повторяться много раз. Date - значение по умолчанию Now(), двух операций в секунду с одним ID быть не может, если даже вдруг может, подключу MAX по автосчетчику. Запрос должен вставлять в таблицу TARGET_TEST_TABLE ID c максимальной датой из таблицы TEST_TABLE, другими словами для каждого ID вставить строку с последней сделанной актиностью. Запрос на вставку абсолютно всех значений выглядит так
Заранее спасибо!
0
|
06.04.2017, 20:54 | |
Ответы с готовыми решениями:
32
Запрос на выборку данных с максимальной датой Запрос на выборку с последней датой Sql запрос за период с максимальной датой Запрос на выборку для отображения последней строки таблицы |
26815 / 14494 / 3192
Регистрация: 28.04.2012
Сообщений: 15,782
|
||||||
06.04.2017, 21:21 | 2 | |||||
Предположительно так (???)
0
|
Модератор
6231 / 2909 / 707
Регистрация: 12.06.2016
Сообщений: 7,839
|
||||||
06.04.2017, 21:51 | 3 | |||||
1
|
21 / 4 / 0
Регистрация: 03.01.2017
Сообщений: 127
|
|
07.04.2017, 11:18 [ТС] | 4 |
Mobile, Capi, огромное спасибо! Разобрался! Работает!
Есть еще один вопрос. Как в запросе на выборку через конструктор организовать пустое поле, которое потом заполняется другим запросом? Если ввести просто заголовок, access предлагает присвоить занчение ячейкам через inputbox Спасибо!
0
|
21 / 4 / 0
Регистрация: 03.01.2017
Сообщений: 127
|
|
08.04.2017, 16:22 [ТС] | 5 |
Разобрался, в названии поля надо написать Название поля:Null
0
|
Модератор
6231 / 2909 / 707
Регистрация: 12.06.2016
Сообщений: 7,839
|
|
08.04.2017, 16:28 | 6 |
0
|
21 / 4 / 0
Регистрация: 03.01.2017
Сообщений: 127
|
|
08.04.2017, 16:42 [ТС] | 7 |
Fieldname:null - строка в названии поля в конструкторе - это имел ввиду
0
|
Модератор
6231 / 2909 / 707
Регистрация: 12.06.2016
Сообщений: 7,839
|
||||||
08.04.2017, 16:58 | 8 | |||||
Dmitry_Morozov,
Нет. Название может быть любым другим, кроме служебных слов, к которым, кстати, относится и Null.
0
|
21 / 4 / 0
Регистрация: 03.01.2017
Сообщений: 127
|
|
08.04.2017, 17:00 [ТС] | 9 |
Естественно любым другим может быть
0
|
Модератор
6231 / 2909 / 707
Регистрация: 12.06.2016
Сообщений: 7,839
|
|
08.04.2017, 17:02 | 10 |
Так Вы же в качестве "найденного решения" приводите:
, а это, простите, глупость.
Не различаете имя поля и значение поля. Покажите текст запроса и результат запроса.
0
|
21 / 4 / 0
Регистрация: 03.01.2017
Сообщений: 127
|
|
08.04.2017, 17:08 [ТС] | 11 |
как глупость, то
Создание запроса в Access, режим конструктора. Ниже таблица для полей запроса. Первая строка по всем полям - Field, если в нем написать "Нужное название поля":null, то при выполнении запроса это будет пустой столбец с названием "Нужное название поля".
0
|
Модератор
6231 / 2909 / 707
Регистрация: 12.06.2016
Сообщений: 7,839
|
|
08.04.2017, 17:15 | 12 |
Ну так Вы и задаете таким образом значение поля.
Ладно, со временем, может, поймете...
0
|
21 / 4 / 0
Регистрация: 03.01.2017
Сообщений: 127
|
||||||
08.04.2017, 20:00 [ТС] | 13 | |||||
Capi, я понимаю о чем Вы, просто мы не можем друг друга понять.
Вы говорите про то, что Fieldname - название самого столбца (поля) - может быть любым абсоляютно. Null - значение записей в поле. А я говорю немного с другой стороны - что если необходимо получить пустой столбей, нужно в конструкторе в поле Field прописать Fieldname:null - по факту это поле - название столбца, в котором так же задается и его значение. Добавлено через 1 час 52 минуты Коллеги, пытаюсь использовать подобную конструкцию в запросе UPDATE, ругется на нехватку параметров, нехватает одного, не могу понять какого Спасибо!
Добавлено через 24 минуты PS Подозреваю, что вместо Q.[Date] Вернее было бы написать Q.MaxDate , в таком случае появляется ошибка 3073 - запрос должен быть обновляемым...
0
|
26815 / 14494 / 3192
Регистрация: 28.04.2012
Сообщений: 15,782
|
|||||||||||
08.04.2017, 20:12 | 14 | ||||||||||
Ошибка понятно какая - в подзапросе Q нет поля Date, есть поле MaxDate. И последняя строка должна быть
Добавлено через 1 минуту С MaxDate и обновляемыми подзапросами опоздал. Подзадержался с апострофами
1
|
21 / 4 / 0
Регистрация: 03.01.2017
Сообщений: 127
|
|
08.04.2017, 20:20 [ТС] | 15 |
Mobile, приветствую, спасибо,
Ругается, пишет мало параметров, нехватает 1 (это вариант с дмакс)
0
|
26815 / 14494 / 3192
Регистрация: 28.04.2012
Сообщений: 15,782
|
|
08.04.2017, 20:30 | 16 |
Я же специально написал
Посмотрите в Immediate (область отладки в редактора ВБА) текст запроса. Скопируйте его, откройте конструктор запросов в режиме SQL и вставьте туда скопированный текст. Попробуйте выполнить. Если будет ошибка, конструктор укажет на нее.
0
|
21 / 4 / 0
Регистрация: 03.01.2017
Сообщений: 127
|
||||||
08.04.2017, 20:47 [ТС] | 17 | |||||
В Immediate выводит код ниже и конструктор ругаетя на синтаксис 'ID=1 and [Date]='
0
|
26815 / 14494 / 3192
Регистрация: 28.04.2012
Сообщений: 15,782
|
|||||||||||
08.04.2017, 21:14 | 18 | ||||||||||
Значит поле [Date] в [TARGET_TEST_TABLE] пустое - NULL. Возможно, что Вы хотели обновить именно записи с пустыми полями даты? Тогда так
Если же только совпадающие по дате записи и не пустые в [TARGET_TEST_TABLE], то так
1
|
21 / 4 / 0
Регистрация: 03.01.2017
Сообщений: 127
|
|||||||||||
10.04.2017, 16:28 [ТС] | 19 | ||||||||||
Коллеги, привет, чего то я ничерта не понимаю=)
из immediate беру запрос, гоняю его через конструктор, Access оворт будет обновлено n записей, далее окно с предупреждением что эти n записей не будут обновлены в связи с type violation - в обеих таблицах одинаковый тип данных всех полей (таблицы просто совпадают за исключением надора данных). В чем проблема не пойму Добавлено через 49 минут + запрос ругался на отсутствие аргумента, как оказалось, не хватало связи
Добавлено через 48 секунд + запрос ругался на отсутствие аргумента, как оказалось, не хватало связи
Добавлено через 20 минут Думаю, что решу проблему в два шага 1) Ваборка инсертом во временную таблицу, т.к. апдейт нельзя сделать по селекту 2) Селект из временной таблицы, где хранятся уже исключительно нужные (максимальные) значения 3) очистка временной таблицы Думаю, это будет оптимально Всем спасибо за помощь!
0
|
21 / 4 / 0
Регистрация: 03.01.2017
Сообщений: 127
|
||||||
11.04.2017, 18:47 [ТС] | 20 | |||||
Коллеги, привет!
Подскажите, пожалуйста Примерно таким же запросом как запрос ниже вставляю данные из одной таблицы в другую. Но не пойму как по синтаксису правильно встроить WHERE, т.к. надо чтобы в таблицу 1 копировались только те строчки из таблицы 2, ID которых есть в таблице 3
0
|
11.04.2017, 18:47 | |
11.04.2017, 18:47 | |
Помогаю со студенческими работами здесь
20
Фото с максимальной датой вставки Выбрать запись с максимальной датой Получить записи с максимальной датой за период Не могу скопировать файл с максимальной датой в новую папку Выбрать уникальные по одному полю записи с максимальной датой для каждой Если нужно сделать запрос на добавление, зачем предварительно делать запрос на выборку? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |