Гость
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Вывод суммы полей столбца / 10 сообщений из 10, страница 1 из 1
03.06.2020, 17:57
    #39965835
Sabfira
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод суммы полей столбца
Ребята, доброго времени суток.. Нужна Ваша помощь.
Есть одна таблица... Допустим TT в ней есть много столбцов, но не суть.
Где-то такая cтруктура нужных полей

[SB] | [DET]|[KOL] | [SummKol]Вася | Рука | 1 |Петя | Рука | 1 |Катя | Нога | 1 |Катя | Рука | 1 |Катя | Рука | 1 |Вася | Рука | 3 |

Результат в поле должны быть такие

[SummKol] 4 1 1 2 2

Словами говоря: в столбе [SummKol] должна быть сумма всех значений поля [KOL] в этой таблице, для каждой строки и при условии в связке полей [SB] , [DET].. Пробовал через sql - ничего не вышло(

vpf9

Спасибо за внимание и извините за потраченное время
...
Рейтинг: 0 / 0
03.06.2020, 18:08
    #39965844
Sabfira
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод суммы полей столбца
[SummKol]411224
...
Рейтинг: 0 / 0
03.06.2020, 21:21
    #39965906
PaulWist
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод суммы полей столбца
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
CREATE CURSOR test (SB c(10), DET c(10), KOL int, SummKol int)

INSERT INTO test values('Вася', 'Рука', 1, 0)
INSERT INTO test values('Петя', 'Рука', 1, 0)
INSERT INTO test values('Катя', 'Нога', 1, 0)
INSERT INTO test values('Катя', 'Рука', 1, 0)
INSERT INTO test values('Катя', 'Рука', 1, 0)
INSERT INTO test values('Вася', 'Рука', 3, 0)

UPDATE test SET SummKol = sAA.SummKol ;
from ;
(SELECT SUM(CC.KOL) as SummKol, cc.SB, cc.DET FROM test CC GROUP BY cc.SB, cc.DET) as sAA;
where sAA.SB = test.SB AND sAA.DET = test.DET
...
Рейтинг: 0 / 0
04.06.2020, 08:18
    #39965983
Sabfira
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод суммы полей столбца
PaulWist,
Спасибо, но я не могу указывать данные, так как в таблице записей около 5 тысяч и все их перебрать чисто нереально
...
Рейтинг: 0 / 0
04.06.2020, 08:52
    #39965989
PaulWist
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод суммы полей столбца
Sabfira
PaulWist,
Спасибо, но я не могу указывать данные, так как в таблице записей около 5 тысяч и все их перебрать чисто нереально


Зачем "указывать" все данные, достаточно в коде изменить имя таблицы

Код: sql
1.
2.
3.
4.
UPDATE ТутИмяТаблицыВкоторойНадоИзменитьSummKol SET SummKol = sAA.SummKol ;
from ;
(SELECT SUM(CC.KOL) as SummKol, cc.SB, cc.DET FROM ТутИмяТаблицыВкоторойНадоИзменитьSummKol CC GROUP BY cc.SB, cc.DET) as sAA;
where sAA.SB = test.SB AND sAA.DET = test.DET



или поясните, что подразумевается под " все их перебрать чисто нереально"
...
Рейтинг: 0 / 0
04.06.2020, 09:14
    #39965992
Sabfira
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод суммы полей столбца
Я думал, что Вы тут забиваете данные, которые нужны для расчетов
PaulWist
Код: sql
1.
2.
3.
4.
5.
6.
INSERT INTO test values('Вася', 'Рука', 1, 0)
INSERT INTO test values('Петя', 'Рука', 1, 0)
INSERT INTO test values('Катя', 'Нога', 1, 0)
INSERT INTO test values('Катя', 'Рука', 1, 0)
INSERT INTO test values('Катя', 'Рука', 1, 0)
INSERT INTO test values('Вася', 'Рука', 3, 0)

...
Рейтинг: 0 / 0
04.06.2020, 09:16
    #39965993
Sabfira
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод суммы полей столбца
Может я конечно коряво выражаюсь, но есть печатная форма в которую выводятся данные с таблицы.. Все остальные поля вывести не составляет труда, а вот этого поля "SummKol" нету в физической таблице и это расчётное значение нужно пристыковать к каждой строке отчета
...
Рейтинг: 0 / 0
04.06.2020, 09:53
    #39966003
Sergey Ch
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод суммы полей столбца
Sabfira
Может я конечно коряво выражаюсь, но есть печатная форма в которую выводятся данные с таблицы.. Все остальные поля вывести не составляет труда, а вот этого поля "SummKol" нету в физической таблице и это расчётное значение нужно пристыковать к каждой строке отчета

Студент?

Ну так и создайте это "вычисляемое" поле в самом отчёте (надо будет group записи по определённым Вами признакам).

Либо как уже советовали Вам выше - создайте временный курсор в котором уже будут сгруппированы записи... Почитайте про "group by" и "sum"...
...
Рейтинг: 0 / 0
04.06.2020, 09:57
    #39966005
PaulWist
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод суммы полей столбца
Sabfira
Может я конечно коряво выражаюсь, но есть печатная форма в которую выводятся данные с таблицы.. Все остальные поля вывести не составляет труда, а вот этого поля "SummKol" нету в физической таблице и это расчётное значение нужно пристыковать к каждой строке отчета


Ммм, да без стакана не разберёшь

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
CREATE CURSOR test (SB c(10), DET c(10), KOL int)

INSERT INTO test values('Вася', 'Рука', 1)
INSERT INTO test values('Петя', 'Рука', 1)
INSERT INTO test values('Катя', 'Нога', 1)
INSERT INTO test values('Катя', 'Рука', 1)
INSERT INTO test values('Катя', 'Рука', 1)
INSERT INTO test values('Вася', 'Рука', 3)

SELECT BB.SB, BB.DET, BB.KOL, AA.SummKol ;
from test BB;
inner join ;
(SELECT SUM(KOL) as SummKol , SB, DET FROM test GROUP BY SB, DET) as AA ON aa.SB = BB.SB AND aa.DET = BB.DET;
into CURSOR TestPRN

SELECT TestPRN
BROWSE 



В отчет надо передать временный курсор TestPRN, те перед выполнением отчета вызвать SELECT TestPRN
...
Рейтинг: 0 / 0
04.06.2020, 10:58
    #39966016
Sabfira
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод суммы полей столбца
PaulWist,
Спасибо большое.. Буду пробовать
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Вывод суммы полей столбца / 10 сообщений из 10, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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