powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / zapros -summa vsex poley?
24 сообщений из 24, страница 1 из 1
zapros -summa vsex poley?
    #33816019
Markos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Privet.
Mne nado sozdat takoy zapros :

SELECT b, SUM(abuna1);
FROM bux;
GROUP BY b;
INTO CURSOR abu1

No, nado ispolzuvat vsex poley tablitsi bux.To yest summa vsex poley tablitsi.
Problema v tom chto takie poley u menya mnoqo (okolo 100) i oni (strukturi tablitsi) moqut menyatsa.
Vopros takoy: Ctobi oboyti eti problemi mojno li ne perecislit vse poley i kak to
's odnoy komondoy' nayti summu?
...
Рейтинг: 0 / 0
zapros -summa vsex poley?
    #33816096
Недоходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Markos
Сначало занеси инфу в массив о структуре таблы через AFIELDS(), а потом определи кол-во елементов в массиве в переменную, потом через for от 1 до созданной переменной черпай названия полей и вставляй их в запрос. Вот и все!
...
Рейтинг: 0 / 0
zapros -summa vsex poley?
    #33816110
StasL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Немного не ясен вопрос. Если ты хочешь получить сумму значений какого-то поля всех строк таблицы, то GROUP BY тебе не нужен. Достаточно так:

SELECT SUM(abuna1);
FROM bux;
INTO CURSOR abu1

И ты получишь сумму всех значений поля abuna1
...
Рейтинг: 0 / 0
zapros -summa vsex poley?
    #33816147
Markos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
StasL, qruppirovka mne nado , imenno po pole "b".

Nedoxodyashiy, eto ya smoq delat:

clos data
use bux
gnFieldcount = AFIELDS(gaMyArray) && Create array
CLEAR
FOR nCount = 1 TO gnFieldcount
? gaMyArray(nCount,1) && Display field names
ENDFOR

No, kak dalshe nazvanie poley vstavlyat v zapros ne polucaetsa.
...
Рейтинг: 0 / 0
zapros -summa vsex poley?
    #33816165
Недоходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Markos
Ты когда нить слышал про "&"
Так вот, создаешь строку в которой пишешь str = [select count(aaa) from bbb group by aaa into cursor ccc]
Далее пишешь &str
select ccc
brow
вот и ВСЕ!
...
Рейтинг: 0 / 0
zapros -summa vsex poley?
    #33816299
Markos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Posmotrite pojalusta, cto ya ne tak delayu , oshibka poluchaetsa.

clos data
use bux
gnFieldcount = AFIELDS(MASS)
?gnFieldcount
read
CLEAR
STR1="SELECT B, "
FOR nCount = 1 TO gnFieldcount
MASS1=MASS(nCount,1)
STR1=[&STR1,SUM(&MASS1)]
?STR1
ENDFOR
...
Рейтинг: 0 / 0
zapros -summa vsex poley?
    #33816351
Недоходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Markos
clos data
use bux in 0
select bux
AFIELDS(array_tabl)
?gnFieldcount
count_array=alen(array_tabl)
str=''
FOR nCount = 1 TO count_array
str=str+iif(nCount<>nCount,[count(]+alltrim(array_tabl(nCount,1))+[) as ]+alltrim(array_tabl(nCount,1))+[ ,],[count(]+alltrim(array_tabl(nCount,1))+[) as ]+alltrim(array_tabl(nCount,1)))
ENDFOR
str=[select ]+str+[ from bux into cursor temps]
&str
...
Рейтинг: 0 / 0
zapros -summa vsex poley?
    #33816505
Markos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Takaya osibka polucaetsa v strku mejdu for i endfor:
'Subscript is outside defined range'
...
Рейтинг: 0 / 0
zapros -summa vsex poley?
    #33816526
Недоходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
str=str+iif(nCount<>count_array,[count(]+alltrim(array_tabl(nCount,1))+[) as ]+alltrim(array_tabl(nCount,1))+[ ,],[count(]+alltrim(array_tabl(nCount,1))+[) as ]+alltrim(array_tabl(nCount,1)))
...
Рейтинг: 0 / 0
zapros -summa vsex poley?
    #33816546
Markos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
To je samaya oshibka.
...
Рейтинг: 0 / 0
zapros -summa vsex poley?
    #33816687
StasL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Перед &str выведи свою строку str на экран и посмотри что в ней не так.
...
Рейтинг: 0 / 0
zapros -summa vsex poley?
    #33817029
Markos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Moy variant vot takoy:

clos data
clea
clea all
use bux in 0
select bux
gnFieldcount = AFIELDS(MASS)
STR1="B"
FOR nCount = 24 TO gnFieldcount && Mne nado nacinaya s 24-vo pole do kontse. && No pocemu to polucaets tolko qde to do 41.
MASS1=MASS(nCount,1)
STR1=[&STR1 ,sum(&MASS1)]
ENDFOR
str2=[select ]+str1+[ from bux group by b]
?str2


Yesli gnFieldcount >41 toqda takaya oshibka polucaetsa: 'Command contains unrecognized phrase/keyword'
...
Рейтинг: 0 / 0
zapros -summa vsex poley?
    #33817126
StasL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вот здесь ты что-то перемудрил
Markos
STR1=[&STR1 ,sum(&MASS1)]


STR1 = STR1 + ", sum(&MASS1)"
...
Рейтинг: 0 / 0
zapros -summa vsex poley?
    #33817320
Markos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
U menya posledniy variant vot tak doljna bit:

clos data
clea
clea all

use abn_inf in 1
select abn_inf

use bux in 0
select bux

gnFieldcount = AFIELDS(MASS)
STR1="b,"
FOR nCount = 34 TO gnFieldcount
select abn_inf
loca for fc =ncount
if a_qiy=1
a_qiy1="q_opt"
endi

if a_qiy=3
a_qiy1="q_abun"
endi
if a_qiy=4
a_qiy1="q_mat_y"
endi
if a_qiy=5
a_qiy1="q_koshk"
endi
if a_qiy=6
a_qiy1="q_fil"
endi


select bux
MASS1=MASS(nCount,1)
sTR1=iif( ncount<>gnFieldcount, str1+[sum(&MASS1*&a_qiy1),],str1+[sum(&MASS1*&a_qiy1)])
ENDFOR
?str1
select &str1 ;
from bux group by b


Foxpro 9 vsyo normalno rabotaet, no mne nado foxpro 6, zdes fotal error dayut i pomoemu stroka sr1=iif(...) ocen dlinnaya .
Mojno kak nibut eto foxpro 6 realizovat?
...
Рейтинг: 0 / 0
zapros -summa vsex poley?
    #33817610
StasL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Поясни, пожалуйста, смысл функции IIF? Если ты вне зависимости от условия возвращаешь одно и то же.
Markos
sTR1=iif( ncount<>gnFieldcount, str1+[sum(&MASS1*&a_qiy1),],str1+[sum(&MASS1*&a_qiy1)])

&MASS1*&a_qiy1 -- в str1 как выглядит? Может здесь где-то ошибка?
...
Рейтинг: 0 / 0
zapros -summa vsex poley?
    #33817839
Недоходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Markos

Во ты намудрил!! Чем тебе мой пример не подходит?? Ладно, чтоб не мучиться со строками могу предложить мой способ. Создай курсор с одним столбцом и тип столбца дай -мемо. добавь только одну строку. И заноси все подряд в это мемо. А потом &имя_курсора.имя_поля. работает на 101%
...
Рейтинг: 0 / 0
zapros -summa vsex poley?
    #33818209
Markos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Etot vopros ya reshil tolko v Foxpro 9. Pocemu to v foxpro 6 oshibka polucaetsa. Pomoemu ocen dlinnaya stroka poetomu.
Stasl, smisl funktsii iif():
V zavisimosti uslovii (ncount<>gnFieldcount)
str1=
[sum(&MASS1*&a_qiy1),]
ili
str1+[sum(&MASS1*&a_qiy1)])
Raznitsa: ","
Seycas ya xocu reshit vot takoy vopros:

SELECT abn_inf
INDEX ON FC TO P
BROWSE
mc=fc
USE BUX_mdx
P1=FIELD(mc)
USE BUX_kss
P2=FIELD(mc)
USE BUX_bnk
P3=FIELD(mc)
USE BUX_borc
P4=FIELD(mc)

Seycas mne nado v odnom brow pokazat vse 4 pole iz 4 raznix tablits
Cto-to takoe:
brow &1, &p2, &p3, &p4
Mojno li takoe delat?
...
Рейтинг: 0 / 0
zapros -summa vsex poley?
    #33818336
StasL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да, это можно, но не таким способом.
Почитай Help по SELECT - SQL. Тебе нужно объединить 4 таблицы в одном запросе.
...
Рейтинг: 0 / 0
zapros -summa vsex poley?
    #33818467
Markos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Selectom ya eto delal . Tolko mne nado cto eti 4 tablitsi odnovremenno (v odnom brow) redaktirovat. No, select eto ne razreshaet.
...
Рейтинг: 0 / 0
zapros -summa vsex poley?
    #33818536
StasL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Извини конечно, но у тебя какой-то неправильный подход к решению этой задачи. Можно сделать это все гораздо проще и избежать многоих проблем.
На http://www.foxclub.ru/articles/ есть статьи Владимира Максимова "Советы начинающим". Почитай, очень много полезного найдешь.
Сам с этого начинал.
...
Рейтинг: 0 / 0
zapros -summa vsex poley?
    #33818581
Markos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ya mnoqo iz nix cital, seycas yeshyo raz posmotrel, ne nashel to cto mne zdes nujno.
Yest 4 tablitsi. Nado ctobi odnovremenno ( v odnom brow) redaktirovat
vse 4 tablitsi "odinokovie" pole po nomeru pole (mc).
...
Рейтинг: 0 / 0
zapros -summa vsex poley?
    #33819911
Недоходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Markos
1) По поводу длины я написал тебе работающий способ. Сам использую.
2)Если таблицы одинаковы то какимто признакам иколичеству строк, то помисти их в одну таблицу и редактирую
...
Рейтинг: 0 / 0
zapros -summa vsex poley?
    #33823128
Markos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Nedoxodyashiy,

1) Vash variant u menya pocemu to s oshibkoy rabotaet:
'Subscript is outside defined range'
Mojet bit ya chto-to ne tak delayu, neznayu.

2) Vash 2-y sovet seycas poprobuyu, pomoemu doljno polucitsa.
...
Рейтинг: 0 / 0
zapros -summa vsex poley?
    #33824893
Недоходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Markos

Эта ошибка про массив. Ты делаешь ссылку на элемент массива которого не существует
...
Рейтинг: 0 / 0
24 сообщений из 24, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / zapros -summa vsex poley?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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