|
Вопрос # 2 841/ вопрос открыт / |
|
Доброго времени суток, уважаемые эксперты!
Подскажите как создать объединяющий запрос?
В таблице "Приход" посчитать количество поступившего товара с одним наименованием?
 |
Вопрос задал: nikvic (статус: Посетитель)
Вопрос отправлен: 26 мая 2009, 09:17
Состояние вопроса: открыт, ответов: 1.
|
Ответ #1. Отвечает эксперт: Вадим К
Здравствуйте, nikvic!
Можно, вот только б привели структуру таблицы, вообще хорошо было бы. Ну а так, пусть kol_tov -количество товара, а nam_tov - его имя. тогда
select sum(kol_tov), nam_tov from mytable group by nam_tov
 |
Ответ отправил: Вадим К (статус: Академик)
Время отправки: 26 мая 2009, 11:22
|
Мини-форум вопроса
Всего сообщений: 10; последнее сообщение — 26 мая 2009, 16:31; участников в обсуждении: 2.
|
nikvic (статус: Посетитель), 26 мая 2009, 12:01 [#1]:
Таблица Prixod:
ID - ключевое поле
Mat - индекс материала
Firma - поставщик
Kol - количество
и т.д.
При выполнении запроса:
SELECT SUM(Kol), Mat FROM Prixod GROUP BY Mat
возникает ошибка:"Field"ID" not found"
|
|
Вадим К (статус: Академик), 26 мая 2009, 12:19 [#2]:
Это БДЕ?
Может хочет что бы поля Kol и/или Mat были проиндексированы...
Галочка "подтверждения прочтения" - вселенское зло.
|
|
nikvic (статус: Посетитель), 26 мая 2009, 12:22 [#3]:
Таблица Access, индексное только ID.
|
|
Вадим К (статус: Академик), 26 мая 2009, 12:24 [#4]:
Ну тогда стоит в самом Access выполнить запрос. а там уже выясниться, что он хочет.
Галочка "подтверждения прочтения" - вселенское зло.
|
|
nikvic (статус: Посетитель), 26 мая 2009, 12:30 [#5]:
После индексации Mat та же ошибка.
Индексировать Kol не позволяет.
|
|
nikvic (статус: Посетитель), 26 мая 2009, 12:51 [#6]:
Access пишет: "Данный подчиненный запрос должен возвращать не более одной записи"
|
|
Вадим К (статус: Академик), 26 мая 2009, 13:19 [#7]:
Поискал, пишут, что некоторые не особо качественные БД хотят, что бы агрегированая функция была после группируемого поля, то есть
SELECT Mat, SUM(Kol) FROM Prixod GROUP BY Mat
Галочка "подтверждения прочтения" - вселенское зло.
|
|
nikvic (статус: Посетитель), 26 мая 2009, 13:35 [#8]:
Пробывал, результат тот же, к сожалению!
|
|
nikvic (статус: Посетитель), 26 мая 2009, 15:56 [#9]:
Проблема была в полях установленных в DBGride.
Рекомендованный запрос работает в пустом DBGride.
|
|
Вадим К (статус: Академик), 26 мая 2009, 16:31 [#10]:
Заодно проверьте, работает ли первоначальный запрос. (когда агрегатная функция вначале).
Галочка "подтверждения прочтения" - вселенское зло.
|
Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.
|