Форум: "Базы";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.02.07;
Скачать: [xml.tar.bz2];




Вниз

БД, Вычисления,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"
Заранее благодарен.




Форум: "Базы";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.02.07;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.72 MB
Время: 0.02 c
3-18693           HydraMarat            2002-01-08 23:21  2002.02.07  
Поиск через SQL


1-18800           MystiX                2002-01-24 15:02  2002.02.07  
Компоненты


3-18758           Артём                 2002-01-11 12:25  2002.02.07  
Подскажите какой компонент использовать!


1-18847           Fareader              2002-01-21 11:43  2002.02.07  
TStringList в файл и из файла


3-18748           DieHard               2002-01-10 17:59  2002.02.07  
Можно ли создать первичный индекс в таблице Paradox