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

Вниз

UPDATE .... SELECT по нескольким полям   Найти похожие ветки 

 
Hawk2   (2006-03-25 17:12) [0]

Как сделать UPDATE по нескольким полям с помощью связки UPDATE .... SELECT . Данные для обновления возвращает подзапрос:
SELECT
LSCHET,
SUM(DOLG),
SUM(NACHISL),
SUM(DOP_NACH),
SUM(OPLATA)
FROM RASCHET
LEFT JOIN SERVICES ON RASCHET.SKOD=SERVICES.SKOD
WHERE SERVICES.NBALANS=1
GROUP BY LSCHET


 
sniknik ©   (2006-03-25 17:28) [1]

и в какую сумму надо измененить? да еще и несколько (из разных таблиц небось?). по моему ты "слегка" ошибся адресом... надо было на форум чародейства и волшебства (или лично Гарри Потеру) ;о)


 
Hawk2   (2006-03-25 18:08) [2]

Остроумие так и прет, я в курсе что ты умный, если то о чем я спросил абсурд и так сделать не возможно то надо было просто сказать, юморист х...


 
Desdechado ©   (2006-03-25 19:01) [3]

в ХП:
FOR твой SELECT...
 UPDATE...


 
sniknik ©   (2006-03-25 19:46) [4]

Desdechado ©   (25.03.06 19:01) [3]
ага
FOR твой SELECT...
UPDATE ... SUM(DOLG) = 5 ...

;о))


 
Desdechado ©   (2006-03-25 20:05) [5]

sniknik ©   (25.03.06 19:46) [4]
если у автора результаты расчетов сохраняются, то можно сумму долга и списывать, а не процентировать :)

что, собственно, не отменяет [3] - только додумывать нужно не в направлении [4], а в направлении [-1]


 
Hawk2   (2006-03-25 22:05) [6]

Какая нафиг разница что я буду делать с результатами, Я ПОПРОСИЛ ПОМОЧЬ СО СКРИПТОМ, дело в том что база эта создана не мной, но она реальная (не домашнее задание студента), по поводу того на сколько правильно она сделана, я тут не причем. Так вот в таблице RASCHET хранятся записи с счетами абонентов, видами предоставленых услуг, долгами, начислениями и оплатами по этим услугам, самих видов услуг около 250, но все они группируются по 5 баллансовым группам, вот именно это я и хочу сделать.


 
sniknik ©   (2006-03-25 22:47) [7]

> Какая нафиг разница что я буду делать с результатами,
ну как какая? зная что делается и для чего делается можно добится лучшего результата. или просто хоть чегото добиться, если постановка задачи "ни в ..., ни в красную армию".

> Я ПОПРОСИЛ ПОМОЧЬ СО СКРИПТОМ
давая за основу нередактируемый запрос? что по нему(/в нем) править? (в "данных для обновления которые возвращает подзапрос") или по нему надо структуру базы/таблиц угадать?

> я тут не причем.
ага. глупый автор базы еще и пытками заставляет работающих с ней косноязычно выражатся. стлолкнулся с базой/автором и уже сам не знаеш чего хочеш...

не переваливай с больной головы на э... непонятно какую (возможно и здоровую, еще непонятно что там с базой).


 
Плохиш ©   (2006-03-26 03:16) [8]

Телепатор говорит, что имеется в виду что-то типа

update что-то
set
f1=LSCHET,
f2=SUM(?.DOLG),
f3=SUM(?.NACHISL),
f4=SUM(?.DOP_NACH),
f5=SUM(?.OPLATA)
FROM RASCHET r
LEFT JOIN SERVICES s ON r.SKOD=s.SKOD
WHERE s.NBALANS=1


 
Desdechado ©   (2006-03-26 19:45) [9]

мой телепатор тоже об этом говорил, вот только синтаксиса [8] нет, поэтому предлагал ХП



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

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

Наверх




Память: 0.49 MB
Время: 0.027 c
15-1142533394
Vendict
2006-03-16 21:23
2006.04.09
C++ и C#


1-1141311245
Andy BitOff
2006-03-02 17:54
2006.04.09
Обработка изображения. Метод.


2-1143105289
Der Nechk@ssoff
2006-03-23 12:14
2006.04.09
Сканирование папки


2-1143059552
Std
2006-03-22 23:32
2006.04.09
создание и подключение плагина


2-1143213046
Spellcaster
2006-03-24 18:10
2006.04.09
Перебрать в цикле свойства класса