powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Многоуровневые запросы
4 сообщений из 4, страница 1 из 1
Многоуровневые запросы
    #36851774
KpaqpTuk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сейчас после долгого программирования на Oracle вернулся к фоксу и думаю поддерживает ли фокс многоуровневые запросы, например:
Код: plaintext
SELECT * FROM (SELECT * FROM table_name)
Цель: хотелось бы одним запросом связать ряд данных UNION ALL а затем отсортировать полученный запрос, т.е.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
select * from
                   (select  1  from Table_1
                    union all
                    select  2  from table_2
                    union all
                    select  3  from table_3) temp
                   order by  1 

Фокс умеет так?
...
Рейтинг: 0 / 0
Многоуровневые запросы
    #36851786
KpaqpTuk,
9-ка умеет.
...
Рейтинг: 0 / 0
Многоуровневые запросы
    #36851804
Kruchinin Pahan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
KpaqpTuk
Цель: хотелось бы одним запросом связать ряд данных UNION ALL а затем отсортировать полученный запрос, т.е.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
select * from
                   (select  1  from Table_1
                    union all
                    select  2  from table_2
                    union all
                    select  3  from table_3) temp
                   order by  1 


Цель достаточно странная. По спецификации SQL, ORDER сквозной для всех UNION'ов. Поэтому подзапрос здесь не нужен.
...
Рейтинг: 0 / 0
Многоуровневые запросы
    #36852094
KpaqpTuk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
CREATE CURSOR cur1 (rn1 n ( 1 ))
CREATE CURSOR cur2 (rn2 n ( 1 ))
CREATE CURSOR cur3 (rn3 n ( 1 ))

INSERT INTO Cur1 VALUES ( 1 )
INSERT INTO Cur1 VALUES ( 2 )
INSERT INTO Cur2 VALUES ( 3 )
INSERT INTO Cur3 VALUES ( 4 )
INSERT INTO Cur3 VALUES ( 5 )

SELECT * FROM Cur1 union ALL SELECT * FROM Cur2 UNION ALL SELECT * FROM Cur3 ORDER BY  1  DESC

Да проверил все гуд, order действительно сквозной и многоуровневые запросы работают:
Код: plaintext
1.
2.
3.
4.
5.
6.
CREATE CURSOR cur1 (rn1 n ( 1 ))
CREATE CURSOR cur2 (rn2 n ( 1 ))

INSERT INTO Cur1 VALUES ( 1 )
INSERT INTO Cur2 VALUES ( 1 )

SELECT t.* FROM (SELECT * FROM cur1) t INNER JOIN cur2 ON cur2.rn2 = t.rn1

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


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