powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Результат запроса в переменную
11 сообщений из 36, страница 2 из 2
Результат запроса в переменную
    #37427841
tanglir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ОлегОлегОлег,

messagebox(переменная)
...
Рейтинг: 0 / 0
Результат запроса в переменную
    #37427858
Неа, запрос
SELECT DISTINCT * FROM I:\BACKUP-SERVER\BASED\priem WHERE spec_tnum like '93%' INTO CURSOR c1
выдал все записи, которые соответствуют условию spec_tnum like '93%' ...

SELECT c1
lits = RECCOUNT()

после этого осталось то же количество записей
...
Рейтинг: 0 / 0
Результат запроса в переменную
    #37427946
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
Local lcFileName, laResult( 1 )

lcFileName = "I:\BACKUP-SERVER\BASED\priem.dbf"
laResult[ 1 ] =  0 

* Количество уникальных значений поля reg_nom среди записей, у которых выполняется условие WHERE
SELECT COUNT(disctinct reg_nom) FROM (m.lcFileName) INTO ARRAY laResult WHERE spec_tnum like '93%' 

MessageBox(laResult[ 1 ])
...
Рейтинг: 0 / 0
Результат запроса в переменную
    #37427948
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Опечатка в слове Distinct Надеюсь, поправите в запросе
...
Рейтинг: 0 / 0
Результат запроса в переменную
    #37428276
ВладимирМ,

Спасибо огромное!
...
Рейтинг: 0 / 0
Результат запроса в переменную
    #37428287
Стыдно уже опять спрашивать... Нужно то же самое, только для объединения двух таблиц. Нужно посчитать количество уникальных записей по полю reg_nom для этого запроса:
SELECT * FROM priem, registr WHERE priem.reg_nom = registr.reg_nom AND priem.spec_tnum like '93%' AND registr.sex = 'Ж'
...
Рейтинг: 0 / 0
Результат запроса в переменную
    #37428522
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И что не получается? Как пробовал?
...
Рейтинг: 0 / 0
Результат запроса в переменную
    #37428635
ВладимирМ,

по-разному.
Local File1, laResult(1), File2
file1 = "I:\BACKUP-SERVER\BASED\PRIEM"
file2 = "I:\BACKUP-SERVER\BASED\REGISTR"
laResult[1] = 0
SELECT COUNT(distinct reg_nom);
FROM (FILE1) INTO ARRAY laResult;
WHERE FILE1.REG_NOM = ;
(SELECT FILE2.REG_NOM FROM FILE2 WHERE FILE2.SEX = 'М');
AND FILE1.spec_tnum like '93%'

Или так:
SELECT COUNT(distinct reg_nom);
FROM (FILE1) INTO ARRAY laResult;
WHERE FILE1.REG_NOM = FILE2.REG_NOM;
FROM FILE2 AND FILE1.spec_tnum like '93%' AND FILE2.SEX = 'М'

Подскажите плиз, где ошибся
...
Рейтинг: 0 / 0
Результат запроса в переменную
    #37428724
reware
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ОлегОлегОлегВопрос. Как присвоить переменной результат запроса:
select COUNT (*) FROM table
Ну, не совсем прямо в перменную, но в конечном итоге туда и попадает.
Код: plaintext
1.
2.
SELECT MAX(pole1) FROM MyTable INTO ARRAY z
? z[ 1 ]
AnyVariable=z[ 1 ]
...
Рейтинг: 0 / 0
Результат запроса в переменную
    #37428961
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ОлегОлегОлегВладимирМ,

по-разному.
Local File1, laResult(1), File2
file1 = "I:\BACKUP-SERVER\BASED\PRIEM"
file2 = "I:\BACKUP-SERVER\BASED\REGISTR"
laResult[1] = 0
SELECT COUNT(distinct reg_nom);
FROM (FILE1) INTO ARRAY laResult;
WHERE FILE1.REG_NOM = ;
(SELECT FILE2.REG_NOM FROM FILE2 WHERE FILE2.SEX = 'М');
AND FILE1.spec_tnum like '93%'

Или так:
SELECT COUNT(distinct reg_nom);
FROM (FILE1) INTO ARRAY laResult;
WHERE FILE1.REG_NOM = FILE2.REG_NOM;
FROM FILE2 AND FILE1.spec_tnum like '93%' AND FILE2.SEX = 'М'

Подскажите плиз, где ошибся

В приведенных Вами примерах File1 и File2 - это не имя файла. Это имя переменных памяти, внутри которых записан полный путь доступа к файлу. Поэтому синтаксис вида "File1.Reg_nom" - бессмысленный. Нет такой таблицы File1. Как следствие, не может быть и поля у не существующей таблицы.

В подобных случаях используют внутренние алиасы команды Select-SQL. "Внутренние" в том смысле, что они действую только и исключительно внутри команды Select-SQL. Внутренний алиас указывается сразу после имени файла через пробел. Иногда допустимо указывать ключевое слово "AS" между именем файла и внутренним алиасом.

При этом, если уж указан внутренний алиас, необходимо в обязательном порядке указать его рядом с именами полей в команде Select-SQL. Вне зависимости от того, в каком месте команды Select-SQL используются имена полей

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
Local File1, laResult( 1 ), File2
file1 = "I:\BACKUP-SERVER\BASED\PRIEM.dbf"
file2 = "I:\BACKUP-SERVER\BASED\REGISTR.dbf"
laResult[ 1 ] =  0 

SELECT COUNT(distinct f1.reg_nom) ;
FROM (FILE1) f1 ;
INNER JOIN (FILE2) f2 ON f1.REG_NOM = f2.REG_NOM;
INTO ARRAY laResult ;
WHERE f1.spec_tnum like '93%' AND f2.SEX = 'М'
...
Рейтинг: 0 / 0
Результат запроса в переменную
    #37429319
Да, все ок. Спасибо еще раз
...
Рейтинг: 0 / 0
11 сообщений из 36, страница 2 из 2
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Результат запроса в переменную
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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