powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Выполнить одним запросом.
6 сообщений из 6, страница 1 из 1
Выполнить одним запросом.
    #38987218
AltHasp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Помогите студенту решить несложную задачу.
Решение с использованием хп - не предлагать.
(Версия FB 2.1 диалект 3)

Есть таблица Prihod с полями
(rowid,tovarid,srok,kolvo)
где
-rowid - первичный ключ таблицы, генериться последовательностю.
-tovarid - идентификатор товара (есть индекс по этому полю).
-srok - срок годности товара тип Date
-kolvo - кол-во прихода (кол-во в штуках).
все поля имеют тип целочисленный, кроме срока - он типа даты.

Нужно выбрать товары у которых срок годности больше одного,
т.е. товары с несколькими сроками годности. Если товар имеет только один срок - их не включать в запрос.
Ещё просуммировать кол-во прихода по этим товарам.

Вот примерные данные
====================
rowid, tovarid, srok, kolvo
====================
1 12 01/01/2016 50
2 12 01/01/2016 35
3 14 09/09/2016 45
4 15 12/12/2017 5
5 15 15/12/2017 5
====================
в результате нужно получить из вышеуказанной таблицы
одним select-ом (можно вложенным) следующий результирующий
запрос

> select tovarid,sum(kolvo)
from prihod where .... group by ... having ...

---
Tovarid, SUM(kolvo)
15 10
---
1 row(s) selected

Спасибо всем кто откликнулся.
...
Рейтинг: 0 / 0
Выполнить одним запросом.
    #38987226
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AltHaspзапрос
Код: sql
1.
2.
select tovarid,sum(kolvo)
from prihod where .... group by ... having ...


Именно таким запросом это и делается. В чём проблема-то?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Выполнить одним запросом.
    #38987234
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
надо многоточия убрать
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Выполнить одним запросом.
    #38987538
Ivan_Pisarevsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AltHasp,

Без своих попыток (пусть и ошибочных) топик отправится в утиль.
...
Рейтинг: 0 / 0
Выполнить одним запросом.
    #38987831
Денис П.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Будет что-то вроде
select tovarid, sum(kolvo)
from prihod
having count(tovarid) >= 2
group by tovarid
...
Рейтинг: 0 / 0
Выполнить одним запросом.
    #38987834
Денис П.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Немного не правильно указал, так точнее
select tovarid, sum(kolvo)
from prihod
group by tovarid
having count(tovarid) >= 2
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Выполнить одним запросом.
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]