powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Помогите с запросом
3 сообщений из 3, страница 1 из 1
Помогите с запросом
    #35748427
nastasjal
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
У меня есть таблица с заявками в ней содержатся предметы, их количество и источник финансирования (бюджет/внебюджет). Надо чтоб выводилось по строкам: предмет, его кол-во (во всех заявках), кол-во с признаком бюджет, кол-во с признаком внебюджет.
Когда пишу подзапрос (бюджет/внебюджет) выводтся ошибка, насколько я понимаю т.к. подзапрос не возвращает ни одного значения.
Вот запрос который работает, но нехватает подзапосов по бюджету/внебюджету

Код: plaintext
1.
2.
3.
SELECT b.name , SUM(c.count_all),SUM(c.sum_all)/SUM(c.count_all),SUM(ROUND(c.sum_all/ 1000 , 1 )),;
(SELECT name FROM dic_ed_izm WHERE dic_ed_izm.id=c.ed_izm)   FROM predm b, zajavka c;
WHERE b.id=c.id_predm GROUP BY b.name , c.ed_izm   INTO ARRAY p1

А вот этот запрос уже не работает

Код: plaintext
1.
2.
3.
4.
5.
SELECT b.name , SUM(c.count_all),SUM(c.sum_all)/SUM(c.count_all),SUM(ROUND(c.sum_all/ 1000 , 1 )),;
(SELECT name FROM dic_ed_izm WHERE dic_ed_izm.id=c.ed_izm),;
(SELECT d.count_all FROM zajavka d WHERE b.id=d.id_predm AND d.id_ist_fin= 2 );
   FROM predm b, zajavka c;
WHERE b.id=c.id_predm GROUP BY b.name , c.ed_izm   INTO ARRAY p1

Подскажите пожалуйста!!!! Очень надо!
...
Рейтинг: 0 / 0
Помогите с запросом
    #35748523
homik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если правильно понял задачу, то

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
CREATE CURSOR dict(id_ed c( 10 ),name c( 20 ))
CREATE CURSOR zaj(id_ed c( 10 ),kol n( 10 ),suma n( 10 ), priz L)
**  priz
**  .T.  -  бюджетный
**  .F.  -  внебюджетный

INSERT INTO dict(id_ed,name) values('a1',"a")
INSERT INTO dict(id_ed,name) values('b1',"b")
INSERT INTO dict(id_ed,name) values('c1',"c")


INSERT INTO zaj(id_ed,kol,suma,priz) values('a1', 5 , 200 ,.T.)
INSERT INTO zaj(id_ed,kol,suma,priz) values('a1', 1 , 100 ,.F.)
INSERT INTO zaj(id_ed,kol,suma,priz) values('a1', 1 , 200 ,.F.)
INSERT INTO zaj(id_ed,kol,suma,priz) values('b1', 10 , 1200 ,.T.)
INSERT INTO zaj(id_ed,kol,suma,priz) values('b1', 30 , 1800 ,.T.)
INSERT INTO zaj(id_ed,kol,suma,priz) values('b1', 50 , 1500 ,.F.)
INSERT INTO zaj(id_ed,kol,suma,priz) values('c1', 100 , 10000 ,.T.)
INSERT INTO zaj(id_ed,kol,suma,priz) values('c1', 300 , 30000 ,.T.)


SELECT dict.name,SUM(zaj.kol) as kol_all,SUM(zaj.suma) as sum_all, ;
	   SUM(IIF(zaj.priz=.T.,zaj.kol, 0 )) as kol_bud,SUM(IIF(zaj.priz=.T.,zaj.suma, 0 )) as sum_bud, ;
	   SUM(IIF(zaj.priz=.F.,zaj.kol, 0 )) as kol_vnebud,SUM(IIF(zaj.priz=.F.,zaj.suma, 0 )) as sum_vnebud ;
	   FROM zaj LEFT OUTER JOIN dict ON dict.id_ed=zaj.id_ed GROUP BY  1 
	    	   
...
Рейтинг: 0 / 0
Помогите с запросом
    #35748674
nastasjal
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
homik,

Спасибо, получилось!
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Помогите с запросом
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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