powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Один Select вмеcто двух?
5 сообщений из 5, страница 1 из 1
Один Select вмеcто двух?
    #33720509
alexFV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
SELECT b.kon, COUNT(*) as cn_ls ;
	FROM Us a LEFT JOIN UsD b ON a.zh = b.zh ;
	WHERE a.r1<> 9 ;
	GROUP BY  1 ;
	INTO CURSOR cur1
	
SELECT b.rn, SUM(cn_ls) as cn_abon;
	FROM cur1 a LEFT JOIN UsKon b ON a.kon = b.kon;
	GROUP BY  1 ;
	INTO CURSOR cur2

Возможно ли заменить два эти запроса одним?
...
Рейтинг: 0 / 0
Один Select вмеcто двух?
    #33720626
Фотография Aleksey-K
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А результат надо вернуть в одном курсоре ?
Если да, то можно так:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
SELECT b.kon, COUNT(*) as cn_ls ;
	FROM Us a LEFT JOIN UsD b ON a.zh = b.zh ;
	WHERE a.r1<> 9 ;
	GROUP BY  1 ;
	INTO CURSOR cur1
UNION ALL
SELECT b.rn, SUM(cn_ls) as cn_abon;
	FROM cur1 a LEFT JOIN UsKon b ON a.kon = b.kon;
	GROUP BY  1 
С уважением, Алексей
...
Рейтинг: 0 / 0
Один Select вмеcто двух?
    #33720634
Фотография Владимир СА
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alexFV
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
SELECT b.kon, COUNT(*) as cn_ls ;
	FROM Us a LEFT JOIN UsD b ON a.zh = b.zh ;
	WHERE a.r1<> 9 ;
	GROUP BY  1 ;
	INTO CURSOR cur1
	
SELECT b.rn, SUM(cn_ls) as cn_abon;
	FROM cur1 a LEFT JOIN UsKon b ON a.kon = b.kon;
	GROUP BY  1 ;
	INTO CURSOR cur2

Возможно ли заменить два эти запроса одним?Если у тебя эти оба запроса проходят, и VFP90, то идея такова вместо cur1 второго запроса подставляешь первый, попробуй так:
Код: plaintext
1.
2.
3.
4.
5.
6.
SELECT b.rn, SUM(cn_ls) as cn_abon;
	FROM (SELECT b.kon, COUNT(*) as cn_ls ;
	FROM Us a LEFT JOIN UsD b ON a.zh = b.zh ;
	WHERE a.r1<> 9 ;
	GROUP BY  1 ) a LEFT JOIN UsKon b ON a.kon = b.kon;
	GROUP BY  1 ;
	INTO CURSOR cur2
...
Рейтинг: 0 / 0
Один Select вмеcто двух?
    #33720655
Фотография Aleksey-K
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А.. не понял вопрос...
Тогда конечно подзапрос, как советует Владимир СА
С уважением, Алексей
...
Рейтинг: 0 / 0
Один Select вмеcто двух?
    #33720675
alexFV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
всё чётко отработало!...спасибо Владимир СА
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Один Select вмеcто двух?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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