powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Как сложить поля в таблицах
25 сообщений из 83, страница 1 из 4
Как сложить поля в таблицах
    #38174796
94
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
94
Гость
Всем приветик. Есть 12 таблиц с одинаковыми полями типа так:

ID (содержит названия предметов), st1,st2,st3.... st200 (имена учеников) а на пересечении пропуски. Как сложить все пропуски в такой таблице. Пример таблицы на картинке показан.
...
Рейтинг: 0 / 0
Как сложить поля в таблицах
    #38174831
94
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
94
Гость
Никто не знает да? :-(
...
Рейтинг: 0 / 0
Как сложить поля в таблицах
    #38174839
PaulWist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
94Никто не знает да? :-(

Код: sql
1.
select sum(st1), sum(st2) ,.... from tabla
...
Рейтинг: 0 / 0
Как сложить поля в таблицах
    #38174843
94
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
94
Гость
PaulWist, ну так мне же не в одной таблице надо, а каждое соответствующее поле сложить в 12-ти таблицах.

Для примера можно в трех показать дальше я сама
...
Рейтинг: 0 / 0
Как сложить поля в таблицах
    #38174845
94
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
94
Гость
PaulWist, поле st1 таблицы tab1 с полем st2 таблицы tab2 и т.д.
...
Рейтинг: 0 / 0
Как сложить поля в таблицах
    #38174854
PaulWist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
94PaulWist, поле st1 таблицы tab1 с полем st2 таблицы tab2 и т.д.

CREATE CURSOR t1 (f1 int)
CREATE CURSOR t2 (f2 int)

INSERT INTO t1 values(1)
INSERT INTO t2 values(2)

SELECT SUM(s) as s FROM ;
(select SUM(f1) as s FROM t1;
union all;
select SUM(f2) as s FROM t2;
) bb
...
Рейтинг: 0 / 0
Как сложить поля в таблицах
    #38174859
94
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
94
Гость
PaulWist, Это ведь легче вручную считать чем так вводить, у меня 277 столбцов и 180 строк.

Можно сделать такое:
Пропускать во всех таблицах первую строку, и первый столбец, остальное через VAL() преобразовывать в числовые и складывать? Если да, то как?
...
Рейтинг: 0 / 0
Как сложить поля в таблицах
    #38174864
Фотография ПЕНСИОНЕРКА
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
94,

авторполе st1 таблицы tab1 с полем st2 таблицы tab2 и т.д.



может
поле st1 таблицы tab1 с полем st1 таблицы tab2 .
поле st2 таблицы tab1 с полем st2 таблицы tab2
....................
...
Рейтинг: 0 / 0
Как сложить поля в таблицах
    #38174870
Фотография ПЕНСИОНЕРКА
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
94,

автору меня 277 столбцов и 180 строк.

вы бы лучше базу выложили, а то не понять что с чем складывать
...
Рейтинг: 0 / 0
Как сложить поля в таблицах
    #38174873
94
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
94
Гость
ПЕНСИОНЕРКА, Да да да, извините за ошибку, просто весь день мучаюсь голова кругом
...
Рейтинг: 0 / 0
Как сложить поля в таблицах
    #38174883
Jonny540
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
94... у меня 277 столбцов и 180 строк. Где ж Вы столько предметов взяли? Бедные ученики... Я бы тоже пропускал.

А теперь серьезно: как называются таблицы, т.е. как-то одинаково (t1, t2, ... ) или нет?
...
Рейтинг: 0 / 0
Как сложить поля в таблицах
    #38174890
94
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
94
Гость
Jonny540, таблицы, почти одинаково table1,table2... и т.д. 12 таблиц
...
Рейтинг: 0 / 0
Как сложить поля в таблицах
    #38174900
Jonny540
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
94Jonny540, таблицы, почти одинаково table1,table2... и т.д. 12 таблицНазвания полей одинаковы во всех таблицах?
...
Рейтинг: 0 / 0
Как сложить поля в таблицах
    #38174901
94
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
94
Гость
Jonny540, Да, абсолютно одинаковы
...
Рейтинг: 0 / 0
Как сложить поля в таблицах
    #38174931
Jonny540
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
94 у меня 277 столбцов Это точно таблицы фокса?
...
Рейтинг: 0 / 0
Как сложить поля в таблицах
    #38175026
94
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
94
Гость
Jonny540, да, таблицы в формате DBF
...
Рейтинг: 0 / 0
Как сложить поля в таблицах
    #38175058
sg12
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
94PaulWist, Это ведь легче вручную считать чем так вводить, у меня 277 столбцов и 180 строк.

Можно сделать такое:
Пропускать во всех таблицах первую строку, и первый столбец, остальное через VAL() преобразовывать в числовые и складывать? Если да, то как?

Не лишнее пояснение для любителей SUM().

Чем вызвана такая странная необходимость в такой первой строке?
...
Рейтинг: 0 / 0
Как сложить поля в таблицах
    #38175066
94
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
94
Гость
sg12, там фамилии учеников будут подряд. Поэтому
...
Рейтинг: 0 / 0
Как сложить поля в таблицах
    #38175105
sg12
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
94sg12, там фамилии учеников будут подряд. Поэтому

В базах данных обычно фамилии выводят в отдельную таблицу, а числовой учет ведется в числовых полях.
А у вас это строка как шапка, необходимости в ней нет.
Насколько можно вас понять, вы dbf-таблицы просто используете для наглядности, примерно как в EXCEL?

Цикл по таблицам в вашем случае можно организовать примерно так:
lcTable = 'table1,table2, ...,table12' && Список таблиц
FOR i = 1 TO GETWORDCOUNT(lcTable,',')
lcTab = GETWORDNUM(lcTable,i,',') && Очередная таблица
...
ENDFOR
...
Рейтинг: 0 / 0
Как сложить поля в таблицах
    #38175116
94
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
94
Гость
sg12, да, для наглядности, но там таких несколько строк, которые являются шапками. Ученик, Класс, Учитель. Это строки которые будут друг под другом. полную версию придется привести. Вот ниже на картинке. Примерные поля. возможно еще одно поле добавится в виде шапки к полям, но пока что для таких таблиц хотелось бы понять как суммировать
...
Рейтинг: 0 / 0
Как сложить поля в таблицах
    #38175120
94
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
94
Гость
sg12, не могли бы вы для 3-4 таблиц показать пример?
...
Рейтинг: 0 / 0
Как сложить поля в таблицах
    #38175158
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
94у меня 277 столбцов и 180 строк.
Системные ограничения FoxPro - не более 254 (255) полей (столбцов).

Это значит, что в FoxPro Вашу задачу простыми средствами не решить. Даже если Вы сможете открыть эту таблицу в FoxPro Вы ни при каких условиях не сможете увидеть более 254 (255) полей.

Тот факт, что таблица имеет расширение DBF ни о чем не говорит. Форматов файлов DBF - "вагон и маленькая тележка". Какой именно это формат можно посмотреть по значению самого первого (нулевого) байта таблицы

В приведенной ниже таблице перечислены те значения нулевого (первого по порядку) байта DBF-таблицы с которыми FoxPro может работать напрямую без дополнительных драйверов и преобразований

Байт Тип таблицы DBF0x02FoxBASE: 0x03 FoxBASE+/Dbase III plus no memo: 0x30Visual FoxPro: 0x31Visual FoxPro autoincrement enabled: 0x32Visual FoxPro Varchar Varbinary or Blob-enabled: 0x43dBASE IV SQL table files no memo: 0x63dBASE IV SQL system files no memo: 0x83FoxBASE+/dBASE III PLUS with memo: 0x8BdBASE IV with memo: 0xCBdBASE IV SQL table files with memo: 0xF5FoxPro 2.x (or earlier) with memo: 0xFBFoxBASE

Если Ваши DBF-таблицы имеют значение нулевого байта отличное от указанного в этой таблицы, то лучше Вам использовать Excel для суммирования. Тем более Вы крайне невнятно описали постановку задачи.
...
Рейтинг: 0 / 0
Как сложить поля в таблицах
    #38175159
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
94Это ведь легче вручную считать чем так вводить, у меня 277 столбцов и 180 строк.
Так это не таблицы, а какие-то листы экселя. Подозреваю что из экселя они и появились. Может экселем и обсчитать если это разово надо? Так быстрее всего будет.

По-хорошему надо сначала таблицы нормализовать, т.е. свести все к одной таблице:
Предмет, Ученик, Кол-во пропусков.
а потом уже считать.
...
Рейтинг: 0 / 0
Как сложить поля в таблицах
    #38175169
94
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
94
Гость
Dima T, нет, это не экзелем посчитано, на днях обсуждалась тема кто-то тут писал создание подобной таблицы, я скопировала этот код и для своего примера поля и таблицы переделала. Сейчас я дам вам ссылку на этот паблик вот кстати, и сегодня было обсуждение этой темы: http://www.sql.ru/forum/actualthread.aspx?tid=1008720 . Вот я получила такую же таблицу но у меня таких 12. И нужно сложить их всех.
...
Рейтинг: 0 / 0
Как сложить поля в таблицах
    #38175171
94
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
94
Гость
Dima T, вот в той теме было то что мне надо сделать тоже, но мне еще нужно и сложить такие таблицы которых 12 штук. И это надо не разово, а каждый год чтобы делалось
...
Рейтинг: 0 / 0
25 сообщений из 83, страница 1 из 4
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Как сложить поля в таблицах
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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