Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2011.11.20;
Скачать: CL | DM;

Вниз

Помогите написать SQL запрос...   Найти похожие ветки 

 
ixen   (2011-07-28 14:29) [0]

СУБД Firebird... вобщем суть в следующем.. есть таблица clients справочник клиентов, и moves их заказы

clients
Id - первичный ключ
client_name - имя клиента
summ - сумма заказов

moves
Id - первичный ключ
client_id - id клиента
kolvo - количество
price - цена единицы

нужно записать в поле sum таблицы clients стоимость всех их заказов...
можно ли сделать это одним запросом?
пока остановился на следующем... дальше не могу сообразить...

update clients set summ=(select cast(sum(m.kolvo*m.price)as numeric(15,2)) from clients c join moves m on c.id=m.client_id where m.type_doc in ("U","M"))

в результате происходит запись всем клиентам одну и туже сумму...


 
Омлет ©   (2011-07-28 14:41) [1]

UPDATE clients c
SET summ = (
 SELECT CAST(SUM(kolvo * price) AS NUMERIC(15,2))
 FROM moves m
 WHERE (c.id = m.client_id) AND (m.type_doc in ("U", "M"))
);


 
ixen   (2011-07-28 14:53) [2]

все работает.. спасибо большое...


 
Dennis I. Komarov ©   (2011-07-28 15:26) [3]

цена - "price", а вот количество "kolvo"



Страницы: 1 вся ветка

Текущий архив: 2011.11.20;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.025 c
3-1266501690
Sergey2
2010-02-18 17:01
2011.11.20
переменная в секции From


6-1245392255
SortoVaritu
2009-06-19 10:17
2011.11.20
Вопрос по FtpGetFile


15-1311798599
Юрий
2011-07-28 00:29
2011.11.20
С днем рождения ! 28 июля 2011 четверг


15-1311915862
И. Павел
2011-07-29 09:04
2011.11.20
Восстановление бекапа БД в другую БД


15-1311366602
Юрий
2011-07-23 00:30
2011.11.20
С днем рождения ! 23 июля 2011 суббота