Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / FoxPro, Visual FoxPro Новый топик    Ответить
 Помогите пожалуйста с подзапросом  [new]
Юля21
Member

Откуда:
Сообщений: 11
Как записать данный запрос для FoxPro 8:
select count(sved.tn),(select count(obrasov.tn) from obrasov)
from sved
20 янв 08, 18:34    [5177454]     Ответить | Цитировать Сообщить модератору
 Re: Помогите пожалуйста с подзапросом  [new]
beginner_fox
Guest
Юля21
Как записать данный запрос для FoxPro 8:
select count(sved.tn),(select count(obrasov.tn) from obrasov)
from sved


Попробуйте так:

select count(sved.tn), t2.col2
from sved,(select count(obrasov.tn) as col2 from obrasov) t2

Но у вас будет декартово произведение результатов двух таблиц!
Таблицы то как-то соединяются между собой?
21 янв 08, 10:27    [5178662]     Ответить | Цитировать Сообщить модератору
 Re: Помогите пожалуйста с подзапросом  [new]
PaulWist
Member

Откуда:
Сообщений: 2236
Юля21
Как записать данный запрос для FoxPro 8:
select count(sved.tn),(select count(obrasov.tn) from obrasov)
from sved


Теперь поясните, "человеческим" языком, что надо получить в итоговой выборке.
21 янв 08, 10:37    [5178755]     Ответить | Цитировать Сообщить модератору
 Re: Помогите пожалуйста с подзапросом  [new]
CTAC-KO
Member

Откуда: Украина, г. Ивано-Франковск
Сообщений: 1012
там наверное выборка по идентификатору из разных таблиц, тут куча вариантов:
select count(sved.tn), count(obrasov.tn) from sved, obrasov INTO...
select count(sved.tn), count(obrasov.tn) from sved JOIN obrasov ON obrasov.id = sved.id...
select count(sved.tn) from sved UNION SELECTcount(obrasov.tn) from obrasov INTO...
21 янв 08, 13:27    [5180124]     Ответить | Цитировать Сообщить модератору
 Re: Помогите пожалуйста с подзапросом  [new]
Юля21
Member

Откуда:
Сообщений: 11
Записала это подзапрос
select count(sved.tn), count(obrasov.tn) from sved, obrasov ;
select count(sved.tn), count(obrasov.tn) from sved JOIN obrasov ON obrasov.tn = sved.tn;
select count(sved.tn) from sved UNION SELECT count(obrasov.tn) from obrasov ;
ВЫВОДИТ ОШИБКУ!!!!

Мне вообще надо, вывести в отдельные столбцы результыты совершенно отдельных выборок select.
Чтобы для каждого запроса не создавать новое представление!!!!
21 янв 08, 23:50    [5183023]     Ответить | Цитировать Сообщить модератору
 Re: Помогите пожалуйста с подзапросом  [new]
Юля21
Member

Откуда:
Сообщений: 11
select count(sved.tn), t2.col2;
from sved,(select count(obrasov.tn) as col2 from obrasov) t2;

синтаксическая ошибка!!!

Спасибо за совет)
21 янв 08, 23:53    [5183028]     Ответить | Цитировать Сообщить модератору
 Re: Помогите пожалуйста с подзапросом  [new]
Aleksey-K
Member

Откуда: Москва
Сообщений: 3116
Юля21
select count(sved.tn), t2.col2;
from sved,(select count(obrasov.tn) as col2 from obrasov) t2;

синтаксическая ошибка!!!

Спасибо за совет)

Юля21 вы не обижайтесь, но из вашего текста запроса совсем не понятна, что вы хотите получить.
Диалект SQL в VFP в плане использования корреляционных подзапросов (тем более в VFP 8.0) не совсем совпадает с SQL ANSI-92.
Для того, что бы получить кваливицированную помощь обычно тут поступают так:
1. Описывают DDL (структура) для таблиц, участвующих в запросе
2. Какой результат надо получить (с примером)
3. Версия VFP
С уважением, Алексей.
22 янв 08, 08:08    [5183302]     Ответить | Цитировать Сообщить модератору
 Re: Помогите пожалуйста с подзапросом  [new]
beginner_fox
Guest
Юля21
select count(sved.tn), t2.col2;
from sved,(select count(obrasov.tn) as col2 from obrasov) t2;

синтаксическая ошибка!!!

Спасибо за совет)


Попробуйте так:
select t1.col1, t2.col2;
FROM ( select COUNT(tn) as col1 FROM sved) t1,(select count(tn) as col2 from obrasov) t2
22 янв 08, 11:59    [5184705]     Ответить | Цитировать Сообщить модератору
Между сообщениями интервал более 1 года.
 Re: Помогите пожалуйста с подзапросом  [new]
Бонни
Member

Откуда:
Сообщений: 23
Господа, снова нужна помощь !

Выдаёт синтаксич. ошибку на выполнении запроса:
select
sum(FOT.hourqnt)
from (
select
zfcacwth.hourqnt as hourqnt
from
zfcacwth,
zHrType
where
zHrType.HrType_rn = zfcacwth.HrType_rn and
fcac_RN ='01Aê' and
date between {^2009-01-01} and {^2009-01-31}
group by
zfcacwth.date,
zfcacwth.HrType_rn
) FOT
;

Причем внутренняя часть работает без разговоров:
select
zfcacwth.hourqnt as hourqnt
from
zfcacwth,
zHrType
where
zHrType.HrType_rn = zfcacwth.HrType_rn and
fcac_RN ='01Aê' and
date between {^2009-01-01} and {^2009-01-31}
group by
zfcacwth.date,
zfcacwth.HrType_rn;
1 окт 09, 12:08    [7728896]     Ответить | Цитировать Сообщить модератору
 Re: Помогите пожалуйста с подзапросом  [new]
проходящий.
Guest
Бонни,

какая версия фокса используется? Запросы в From возможны только в 9-ке.
1 окт 09, 12:11    [7728926]     Ответить | Цитировать Сообщить модератору
 Re: Помогите пожалуйста с подзапросом  [new]
Бонни
Member

Откуда:
Сообщений: 23
Интерфейс подключения к БД настроен через Microsoft Visual FoxPro Driver 6.01.8629 .
Сами запросы рисую из PB 9.0.
Какой нужно залить, чтоб заработало? Любой 9й версии?
1 окт 09, 12:18    [7728981]     Ответить | Цитировать Сообщить модератору
 Re: Помогите пожалуйста с подзапросом  [new]
Бонни
Member

Откуда:
Сообщений: 23
Забыла написать, подключение через ODBC,OLE DB для PB не нашла))).
1 окт 09, 12:22    [7729013]     Ответить | Цитировать Сообщить модератору
 Re: Помогите пожалуйста с подзапросом  [new]
проходящий.
Guest
Бонни,
от 9-ки есть только VFP OleDB Provider. ODBC только до 6 версии.
1 окт 09, 12:35    [7729105]     Ответить | Цитировать Сообщить модератору
 Re: Помогите пожалуйста с подзапросом  [new]
Бонни
Member

Откуда:
Сообщений: 23
Большое спасибо за ответы. Видимо от ОЛЕ не уйти. Будем пробовать.
1 окт 09, 13:38    [7729536]     Ответить | Цитировать Сообщить модератору
Все форумы / FoxPro, Visual FoxPro Ответить