Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2007.08.12;
Скачать: [xml.tar.bz2];

Вниз

работа с файлом dbf   Найти похожие ветки 

 
Jann ©   (2007-07-18 07:59) [0]

Вопрос наверное прозаичен. Есть таблица dbf:
фио - сумма1-сумма2
заполнена эта таблица следующим образаом:
Иванов И.П.   1000.00 237.00
                   250.00  43.80
Семенов О.П.  340.00  21.70
                   150.00  15.90

вторая запись относиться к предыдущей.
Вопрос в следующем, как их совестить, чтобы была одна запись, а суммы суммировались между собой?


 
sniknik ©   (2007-07-18 08:46) [1]

очень плохо заполнено... лучше бы переделать таблицу на две, типа
ID  фио
1   Иванов И.П.
2   Семенов О.П.
(имя отчество тоже лучше разнести по разным полям пока не поздно)
и
IDфам  сумма1-сумма2
1         1000.00 237.00
1         250.00  43.80
2         340.00  21.70
2         150.00  15.90
не говоря уже замене dBase на чтонибудь посовременнее.
тогда можно, и легко, запросами обойтись

а пока, в том виде что есть, только циклом по таблице с переносом/суммированием в другую (в памяти например). цикл, нашел фамилию - перенес, идешь дальше сумируеш, пока другую фамилию не встретил, или не конец таблицы.


 
Desdechado ©   (2007-07-18 11:02) [2]

Тяжелый случай. Наверняка экспортировали из экселя. Любят юзеры визуальные эффекты пустых строчек и -"-.


 
Anatoly Podgoretsky ©   (2007-07-18 11:24) [3]

Вообще то это смерть, надеяться на физический порядок записей.


 
Stanislav ©   (2007-07-18 13:29) [4]

sniknik ©   (18.07.07 08:46) [1]
либо нужно циклом пройтись по таблице и заменить пустые значения ФИО значением из предыдущей заполненой колонки, только должна быть соответствующая сортировка.
А потом уже строить запрос.


 
Jann ©   (2007-07-18 16:01) [5]

задача немного упрастилась, получил вид
Иванов И.П.   1000.00 237.00
Иванов И.П.   250.00  43.80
Семенов О.П.  340.00  21.70
Семенов О.П. 150.00  15.90
ка тут быть? через sql запрос??


 
Desdechado ©   (2007-07-18 16:03) [6]

Sum + Group By


 
Jann ©   (2007-07-18 16:31) [7]

select fio, sum(summ1), sum(summ2)
from base
group by fio

так??


 
Stanislav ©   (2007-07-18 17:21) [8]

ага



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2007.08.12;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.061 c
2-1184408740
Knob
2007-07-14 14:25
2007.08.12
Помогите! Как написать простой AI


11-1135014176
Vladimir Kladov
2005-12-19 20:42
2007.08.12
Версия 2.23+Collapse


9-1157348875
VitaWED
2006-09-04 09:47
2007.08.12
Проблемs c памятью


6-1141228505
Gnobobel
2006-03-01 18:55
2007.08.12
Indy: Не посылаются Cookies.


2-1184308818
Kolan
2007-07-13 10:40
2007.08.12
Почему один пакет не видит, что в другом пакете есть класс?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский