![]() |
|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#41 |
Пользователь
Регистрация: 01.09.2012
Сообщений: 22
|
![]()
Да. В пустую таблицу main запрос
INSERT INTO main ( value1, value2, value5, value4, value3 ) SELECT 'тест' AS value1, #9/1/2012# AS value2, 2 AS value5, (SELECT t1.ID FROM t1 WHERE t1.value2 = True), Sum (main.value5) + 1 FROM main WHERE (((main.value2)=#9/1/2012#)); добавляет запись. Но в выражении Sum (main.value5) + 1 - не плюсуется единица для первой записи за дату. Вторая запись Единицу плюсует. Как приплюсовать значение к сумме пустой выборки?! ![]() Значение по умолчанию в виде 1, исчезает после запроса. Последний раз редактировалось anton__k; 02.09.2012 в 15:28. |
![]() |
![]() |
![]() |
#42 | |
Пользователь
Регистрация: 01.09.2012
Сообщений: 22
|
![]() Цитата:
|
|
![]() |
![]() |
![]() |
#43 | |
Подтвердите свой е-майл
Регистрация: 29.08.2012
Сообщений: 4,011
|
![]() Цитата:
|
|
![]() |
![]() |
![]() |
#44 |
Пользователь
Регистрация: 01.09.2012
Сообщений: 22
|
![]()
Проверьте.
По единице идеи у кого-нибудь есть?) Но в выражении Sum (main.value5) + 1 - не плюсуется единица для первой записи за дату. Вторая запись Единицу плюсует. |
![]() |
![]() |
![]() |
#45 | |
Подтвердите свой е-майл
Регистрация: 29.08.2012
Сообщений: 4,011
|
![]() Цитата:
![]() не плюсуется потому как: что-то + null = null вот так должна - Nz(Sum(main.value5), 0) + 1 |
|
![]() |
![]() |
![]() |
#46 |
Подтвердите свой е-майл
Регистрация: 29.08.2012
Сообщений: 4,011
|
![]()
Но такие выражения уже повод на сомнение в правильности архитектуры и/или действия.
|
![]() |
![]() |
![]() |
#47 | |
Пользователь
Регистрация: 01.09.2012
Сообщений: 22
|
![]() Цитата:
Значение, записываемое в виде суммы значений другого поля в моей задаче играет существенное значение. Окончательный вариант тестового запроса: Код:
Всем ОГРОМНОЕ спасибо. ![]() |
|
![]() |
![]() |
![]() |
#48 | |
Подтвердите свой е-майл
Регистрация: 29.08.2012
Сообщений: 4,011
|
![]() Цитата:
![]() |
|
![]() |
![]() |
![]() |
#49 |
Пользователь
Регистрация: 01.09.2012
Сообщений: 22
|
![]()
Грубо говоря:
В целевую базу из приложения передаётся набор значений. Часть значений - ссылки (ID) на записи во вспомогательных таблицах (некоторые известны, некоторые нет). Соответственно те которые не известны (в данном случае одно) выдергивается SELECT'ом. Затем на основании одной записи в БД формируется документ word (от одного до нескольких) с уникальным порядковым номером. Каждый день нумерация начинается с 1. В нашем случае значение получаемое в результате SUM - это первый порядковый номер для документа (последующие номера идут как +1 в зависимости от кол-ва формируемых документов, количество - это суммируемое поле). Соответственно номер первого документа для первой записи в день = 1. Номер первого документа в последующих записях = сумме количества документов в предыдущих записях +1. Как-то так. Последний раз редактировалось anton__k; 02.09.2012 в 16:23. |
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Запрос на добавление | Slame | Помощь студентам | 4 | 20.11.2011 23:01 |
Запрос на добавление | Slame | Microsoft Office Access | 3 | 15.11.2011 11:24 |
Запрос на добавление | Insightful | Microsoft Office Access | 9 | 30.04.2010 18:17 |
Добавление (запрос) | warshadow | Microsoft Office Access | 8 | 23.10.2009 01:15 |
запрос на добавление | William | Microsoft Office Access | 3 | 13.07.2007 22:00 |