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

Вниз

БД, Вычисления,SQL   Найти похожие ветки 

 
Gogi   (2002-01-09 10:26) [0]

Здравствуйте! Hlp me pls, проблема в следуещем:
3 таблицы в Paradox (Tovar, Prihod, Rash), к Tovar. привязаны 2 другие.
- Пишем Query1:
Select Sum(kolP) As s_kol
from Prihod
where idn=:n
- Пишем Query2:
Select Sum(kolR) As s_kolR
from Rash
where idn=:n
1) Можно ли объединить 2 запроса в один?
Я пробовал видит одну переменную, которая первая прописана в Query
S_kol.
2) А главная задача (проблема) - записать в таблицу Tovar
разницу сумм "KolP" и "KolR" из подчиненных таблиц (Prihod и Rash).

У кого какие соображения, заранее благодарен.


 
sky3d ©   (2002-01-09 11:01) [1]

Можно использовать Union в случае с одинаковой структурой.
А зачем разносить 2 таблицы прихода и расхода, не достаточно иметь поле-признак и запрос очуществлять по одной таблице ?

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


 
Gogi   (2002-01-09 11:52) [2]

- Union пробовал, "As s_kol" видит а вторую переменную "As s_kolP" нет!
- а две табл. для того чтоб видеть и расход и приход в динамике по датам и по цене,
по моему удобно (плюс обрабатывать дальше и т.д.).
- Разницу считать, а как? в этом и вопрос, если знаете подскажите pls.


 
sky3d ©   (2002-01-09 12:36) [3]

Select Sum(kolP) As s_kolp, 0 as s_Kolr
from Prihod where idn=:n

union

Select 0 as s_Kolp, Sum(kolR) As s_kolR
from Rash where idn=:n

Можно также сделать выборку select * from T where F = 1 (получим весь приход) где F = 1 - приход F = 2 - расход
Разницу считать так : суммируешь по товару все где признак приход
и отнимаешь расход - получаешь текущее значение.


 
Gogi   (2002-01-09 16:11) [4]

Все конечно хорошо, или я не правильно обьяснил, или я .......
А разницу я считаю так:
//procedure TForm1.Table2CalcFields(DataSet: TDataSet);
// var a: double;
// b: string;
//begin
// a:=query1s_kol.value-query2s_kolR.value;
// str(a:5:2,b);
// label5.caption:=b;
// end;
Но в конечном итоге надо записать в табл. "Tovar" напротив каждого наименования "Name" количество "Kol"
Заранее благодарен.



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

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

Наверх




Память: 0.47 MB
Время: 0.012 c
1-18828
olegd
2002-01-25 18:44
2002.02.07
ПОМОГИТЕ


4-19025
Art
2001-11-18 18:06
2002.02.07
Как использовать ShellExecute?????


3-18712
Bura
2002-01-10 00:44
2002.02.07
IB


14-18958
fag2000@ok.ru
2001-12-17 14:57
2002.02.07
Установка MS-SQL Server


1-18875
Gabi100
2002-01-23 10:48
2002.02.07
Прилипание формы