Главная страница
    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.042 c
2-1184743738
lamerskii_vopros
2007-07-18 11:28
2007.08.12
получение параметров после запроса


15-1184318743
Zagaevskiy
2007-07-13 13:25
2007.08.12
Печатать десятью пальцами


3-1178012895
Sapos
2007-05-01 13:48
2007.08.12
Формат времени


2-1184735926
Boga
2007-07-18 09:18
2007.08.12
Архивирование папки


6-1167761692
maxistent
2007-01-02 21:14
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
Английский Французский Немецкий Итальянский Португальский Русский Испанский