
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
17.03.2004, 01:02
|
|||
|---|---|---|---|
Как сделать групировку в это запросе |
|||
|
#18+
Кто подскажет... ? Есть запрос sCall1 = "UPDATE Номенклатура INNER JOIN ТаблицаПоступлений ON Номенклатура.ISO = ТаблицаПоступлений.Наименование SET Номенклатура.Остаток = ТаблицаПоступлений.Количество" Хочу, чтобы перед апдейтом таблицы "Номенклатура" была произведена сделана групировка "ТаблицыПоступлений" по "ТаблицаПоступлений.Наименование" и расчитана сумма по "ТаблицаПоступлений.Количество" вобщем куда тут всунть GROUP BY ? :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.03.2004, 01:13
|
|||
|---|---|---|---|
Как сделать групировку в это запросе |
|||
|
#18+
/topic/80731 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.03.2004, 01:17
|
|||
|---|---|---|---|
Как сделать групировку в это запросе |
|||
|
#18+
Если советуешь сделать на основе другого запроса ... то тут проблем нет а нельзя все в одной строке ? Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.03.2004, 01:19
|
|||
|---|---|---|---|
Как сделать групировку в это запросе |
|||
|
#18+
Советую посмотреть ссылку. Там и примеры из одной строки, и стандартная проблема для группировки при обновлении. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.03.2004, 16:36
|
|||
|---|---|---|---|
Как сделать групировку в это запросе |
|||
|
#18+
В примере приведен результат когда апдейт произоводится по результату селекта из таблицы. А как сделать апдейт в одной таблице по результату группировки в другой таблице ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.03.2004, 17:02
|
|||
|---|---|---|---|
Как сделать групировку в это запросе |
|||
|
#18+
легче еще раз вопрос задать чем посмотреть пример и немножко подумать ? 1 шаг делаешь вопрос на группировку в конструкторе 2 шаг входишь в режим конструктора и заключаешь скрипт в скобки - поучается подчиненный запрос 3 шаг перед подчиненным запросом пишешь: update ИМЯТАБЛИЦЫ set = 4 шаг подчиненный запрос должен возвращать одно значение, одно поле - оставляешь суммовое поле - перемещаешь остальные поля группировки в условие WHERE и указвыаешь соответствие их полям таблицы, которую будешь обновлять ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.03.2004, 17:03
|
|||
|---|---|---|---|
Как сделать групировку в это запросе |
|||
|
#18+
читать так: update ИМЯТАБЛИЦЫ set ИМЯПОЛЯ = ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.03.2004, 17:09
|
|||
|---|---|---|---|
Как сделать групировку в это запросе |
|||
|
#18+
Спасибо Алексей ... буду так делать ... ! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.03.2004, 17:25
|
|||
|---|---|---|---|
Как сделать групировку в это запросе |
|||
|
#18+
sCall1 = "UPDATE Номенклатура SET Номенклатура.Остаток = (SELECT ТаблицаПоступлений.Наименование, Sum(ТаблицаПоступлений.Количество) AS ИтогоКоличество FROM ТаблицаПоступлений GROUP BY ТаблицаПоступлений.Наименование)" Вот с Where не совсем понял куда его девать, чтобы подчиненный запрос выдавал одно значение ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.03.2004, 17:38
|
|||
|---|---|---|---|
Как сделать групировку в это запросе |
|||
|
#18+
UPDATE Номенклатура SET Номенклатура.Остаток = (SELECT Sum(ТаблицаПоступлений.Количество) AS ИтогоКоличество FROM ТаблицаПоступлений where ТаблицаПоступлений.Наименование = Номенклатура.Наименование) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.03.2004, 17:49
|
|||
|---|---|---|---|
Как сделать групировку в это запросе |
|||
|
#18+
... пишет, что "В операции должен использоваться обновляемый запрос" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.03.2004, 18:03
|
|||
|---|---|---|---|
Как сделать групировку в это запросе |
|||
|
#18+
может так получится ? UPDATE Номенклатура SET Номенклатура.Остаток = dSum("Количество","ТаблицаПоступлений" ; " Наименование = '" & Наименование & "'") ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.03.2004, 18:04
|
|||
|---|---|---|---|
Как сделать групировку в это запросе |
|||
|
#18+
очепятка UPDATE Номенклатура SET Номенклатура.Остаток = dSum("Количество","ТаблицаПоступлений" , " Наименование = '" & Наименование & "'") ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.03.2004, 18:48
|
|||
|---|---|---|---|
Как сделать групировку в это запросе |
|||
|
#18+
На "Количество" выдает Expected: End of Statement. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.03.2004, 21:19
|
|||
|---|---|---|---|
Как сделать групировку в это запросе |
|||
|
#18+
По незнанию так приходится считать остаток. Копирую с таблицы прихода и продаж сгрупированные данные по наименованию и сумированные по количеству. Потому вычитаю из одной другую. Но как все это обьеденить и без создания таблиц ? sIn = "INSERT INTO ИтогоПолучено (Наименование, Количество) SELECT ТаблицаПоступлений.Наименование, Sum(ТаблицаПоступлений.Количество) AS Количество FROM ТаблицаПоступлений GROUP BY ТаблицаПоступлений.Наименование" sOut = "INSERT INTO ИтогоПродано (Наименование, Количество) SELECT ТаблицаПродаж.Наименование, Sum(ТаблицаПродаж.Количество) AS [Количество] FROM Продажи INNER JOIN ТаблицаПродаж ON Продажи.КодПродажи = ТаблицаПродаж.КодПродажи WHERE (((Продажи.СостояниеТовара)= '" & "2Резерв" & "')) OR (((Продажи.СостояниеТовара)='" & "3Отгрузка" & "')) GROUP BY ТаблицаПродаж.Наименование" CurrentDb.Execute (sDelIn) CurrentDb.Execute (sDelOut) sOstatok = "SELECT [ИтогоПолучено]![Количество]-[ИтогоПродано]![Количество] AS Разница FROM ИтогоПолучено INNER JOIN ИтогоПродано ON ИтогоПолучено.Наименование = ИтогоПродано.Наименование" Кто сможет помочь ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.03.2004, 22:40
|
|||
|---|---|---|---|
Как сделать групировку в это запросе |
|||
|
#18+
кстати как будет эффективнее ? 1. сделать через рекорд сет ? 2. Или умудриться написать (если это возможно) весь запрос в одну строку Спасибо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.03.2004, 23:11
|
|||
|---|---|---|---|
Как сделать групировку в это запросе |
|||
|
#18+
Уважаемый nukri (заранее прошу прощения за сухость слога - я пьян), если вы знаток sql (t/u/v/w и т.д.) то это одно дело - тогда вам минус, в приведенном по ссылке топике это есть. И "как сделать одной строкой", и полученная вами ошибка, осталось только почитать Если вы не знаток, поиграйте вложенными запросами, с distinct'ами и т.п., и не гните людям мозг. --- Всех с наступающими и прошедшими праздниками. Ура! (Вы спросите с какими? Так я не знаю.:) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=45&tablet=1&tid=1676011]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
180ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
50ms |
get tp. blocked users: |
1ms |
| others: | 229ms |
| total: | 502ms |

| 0 / 0 |
