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

Вниз

Вопрос по SQL   Найти похожие ветки 

 
sterran   (2002-10-24 10:16) [0]

Есть БД с полями Табельный номер и начисленная зарплата

TNOM ITNCH
========================
00001 32526.00
00002 24521.26
00003 18562.20
.
.
.
00001 5083.69
00002 1725.63
00003 200.00



Для того чтобы узнать общую сумму начисление каждого табельного номера достаточно выполнить
стандартную агрегатную функция SUM и сгруппировать по табельным номерам.

А существует ли какой не будь способ для выполнения операции обратной операции SUM, т.е. если нужно вычесть одну величину начисления из другой и сгруппировать их опять же по табельному номеру.

Буду очень признателен если кто-нибудь подаст толковый совет


 
Johnmen   (2002-10-24 10:22) [1]

Способы существуют всегда...
Чтобы получить толковый ответ, необходим толковый вопрос. :)


 
ЮЮ   (2002-10-24 10:24) [2]

Какую и из какой? Их только две для одного таб.#?
И всё-таки MSSQL или (dBase, FoxPro, Paradox)? У них возможности SQL разные.


 
sterran   (2002-10-24 10:36) [3]

Нужно вычитать значения поля ITNCH из встречающихся ниже, использую таблицы DBASE
т.е. это будет выглядеть так для таб.ном
32526,00-5083,69 и т.д. ровно столько раз сколько раз попдаются одинаковые таб. номера



 
Johnmen   (2002-10-24 10:45) [4]

>sterran © (24.10.02 10:36)
>...из встречающихся ниже

В каком смысле ? Ниже уровня океана ? :)))

Добрый совет - пересмотри логическую структуру таблиц БД.


 
sterran   (2002-10-24 11:02) [5]

>Johnmen © (24.10.02 10:45)
причем здесь логическая структура,
Я же имею ввиду не вычитание значения одного поля с другого, это я и сам умею

Согласен, может вопрос поставлен не очень корректно, но мне нужно узнать существует ли какая-нибудь агрегатная функция обратная SUM и все.
Еще раз привожу пример как должен идти процесс вычисления на примере т.номера 00001:
берется его первое встречающее значения 32526,00 из него вычитают второе встречающееся значение 5083,69
в итоге должна получиться и так для всех т.номеров В итоге должна получиться таблица
TNOM ITNCH
=======================
00001 27442.31
00002 22795.63
00003 18362.20



 
Johnmen   (2002-10-24 11:11) [6]

Ты что-то не догоняешь...Еще раз :

>...первое встречающее значения ...

Первое встречающееся где ? И как это определено ?

(24.10.02 11:02)
Если так ставится вопрос, то совершенно определенно можно сказать, что база спроектирована коряво...

Если под начислениями подразумеваются и удержания, то они д.б. хотя бы отрицательными !


 
sterran   (2002-10-24 11:30) [7]

спасибо, догнал



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

Форум: "Базы";
Текущий архив: 2002.11.14;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.007 c
3-45767
Fishka
2002-10-25 13:11
2002.11.14
Директория для временных файлов _SQL....dbf


8-46012
MOleg
2002-07-24 19:11
2002.11.14
DirectX и Delphi6.


8-46011
farhad
2002-07-23 15:03
2002.11.14
Использование графики (bmp) в меню.


3-45792
Ditrix
2002-10-25 16:52
2002.11.14
Неуправляемый DBGrid


14-46080
Beginner-Designer
2002-10-24 16:00
2002.11.14
Как реализовать что-то типа if...then в Builder e?





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский