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

Вниз

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

 
Bilfeld   (2002-07-31 09:42) [0]

Помогите! Бьюсь уже давно, не получается
Имеем две базы P(приход), R (расход) с аналогичными полями Name (символьное) и S (числовое)
В базе P может быть:
Иванов 7
Петров 8
Иванов 10
Иванов 8
Сидоров 9
В базе R может быть
Петров 4
Иванов 2
Иванов 3
Петров 2
Козлов 3
Необходимо написать запрос (без представления)чтобы получить сальдо, т.е.
Иванов 20
Петров 2
Сидоров 9
Козлов -3


 
IlyaA   (2002-07-31 10:03) [1]

а что такое сальдо. Мы тут компьютерщики, а не бухгалтеры. Я знаю, что надо что-то сложить, откуда-то вычесть и т.п.


 
fnatali   (2002-07-31 10:08) [2]

select p.name, sum(p.s)-sum(r.s) saldo from p full outer join r on p.name=r.name
В зависимости от используемого типа СУБД синтаксис запроса может несколько измениться, Н.В. :)


 
ЮЮ   (2002-07-31 10:10) [3]

Ознакомься с group by и union, и столько биться не прийдётся :-)


select Name,sum(S) from
(select Name,S from P
union
select Name,-S from R
) PandR
group by Name


 
fnatali   (2002-07-31 10:11) [4]

Поправлюсь
select p.name, sum(p.s)-sum(r.s) saldo from p full outer join r on p.name=r.name
group by p.name
и по желанию добавить order by


 
ЮЮ   (2002-07-31 10:21) [5]

to fnatali
p full outer join r даст N1 х N2 строк, т.е.
Иванов 7 2
Иванов 7 3
Иванов 8 2
Иванов 8 3
Иванов 10 2
Иванов 10 3
Вряд ли сальдо здесь сойдётся :-)




 
ЮЮ   (2002-07-31 10:36) [6]

Да, если у тебя Paradox, то он не поддерживает подзапросы.
Но если ты используешь BDE, тогда запрос будет:
select Name,sum(S) from PandR.sql group by Name
где в файле "PandR.sql" будет лежать подзапрос:
select Name,S from P
union
select Name,-S from R



 
VAleksey   (2002-07-31 10:48) [7]

по моему такое можно замутить только при использовании хранимых процедур.
если это получится одним запросом к таблицам парадокс ... вышли пожалуйста мне таблички и запрос (работающий ес-но).


 
ЮЮ   (2002-07-31 10:56) [8]

Я не имею привычки отправлять непроверенные заключения :-)
Проверь на любой Paradox-таблице


 
ЮЮ   (2002-07-31 11:00) [9]

И почитай раздел VIEWs в Local SQL Help :-) Я сам был поражён, т.к. в те времена, когда писал под Paradox не мог использовать "нормальные" запросы, а ларчик-то просто открывался :-)


 
VAleksey   (2002-07-31 11:20) [10]


>
> ЮЮ (31.07.02 11:00)

Раздел не найден.
Неужели работает ?


 
VAleksey   (2002-07-31 11:23) [11]

> ЮЮ. Хоть бы свои координаты вписывал.
Припоиске выдает только
Reserved words и
Unsupported language
???




 
ЮЮ   (2002-07-31 11:32) [12]

Ха-ха-ха-ха-ха-ха !!!!!!!!!!
Не смешите меня !!!!!!!!!!!!!!!


 
ЮЮ   (2002-07-31 11:33) [13]

>Хоть бы свои координаты вписывал.
Какие и куда?
>Припоиске выдает только
Reserved words и
Unsupported language

При поиске в Local SQL Help?
По VIEWs выдает:
Data manipulation language overview
INSERT statement
Local SQL VIEWs (то что надо)
SELECT statement




 
ЮЮ   (2002-07-31 11:35) [14]

>Ха-ха-ха-ха-ха-ха !!!!!!!!!!
>Не смешите меня !!!!!!!!!!!!!!!

А это что, моя виртуальная тень, или второя я? Тогда подписывайся ЯЯ :-)


 
ЮЮ   (2002-07-31 11:41) [15]

Ты (то есть Я) развоился ! А я - твоя темная сторона ! Я буду пакостить от твоего имени !!!


 
ЮЮ   (2002-07-31 11:44) [16]

Желаю успеха. Сегодня я уже раза 4 "Большое спасибо" получил и ухожу, а ты действуй-злодействуй :-)


 
iva   (2002-07-31 12:00) [17]

ЮЮ(светлый), у меня тоже не получилось, хотя в HElp нашел, сделал как там написано, но получил "Operation not applicable".


 
Lusha   (2002-07-31 12:13) [18]

Действительно работает...


 
ЮЮ   (2002-07-31 12:19) [19]

Посмотри какие у тебя компоненты BDE - у меня от D6 (от 11.05.2001 3:00)


 
iva   (2002-07-31 12:21) [20]

а как (ult) посмотреть?


 
iva   (2002-07-31 12:21) [21]

а как (где) посмотреть?


 
ЮЮ   (2002-07-31 12:25) [22]

.../BDE/
дата изменения bdeadmin.exe и всяких там dll


 
iva   (2002-07-31 12:26) [23]

даты bdeAdmin и большинства *.dll та-же,что у тебя 11.05.2001


 
iva   (2002-07-31 12:30) [24]

благодарю за внимание, у меня тоже сработало.


 
ЮЮ   (2002-07-31 12:33) [25]

>ЮЮ (31.07.02 11:44)
>Желаю успеха. Сегодня я уже раза 4 "Большое спасибо" получил и >ухожу, а ты действуй-злодействуй :-)

Получил полное моральное удовлетворение ?
А я то думал ты людям помочь хотел, а ты просто тешил свое самолюбие ! И чем ты тогда отличаешься от меня ?


 
ЮЮ   (2002-07-31 12:41) [26]

Вот уже и в пятый раз кому-то помог. Тем и отличаюсь :-))


 
ЮЮ   (2002-07-31 12:47) [27]

2 ЮЮ (31.07.02 12:41)

В пятый раз потешил свое самолюбие.


 
ЮЮ   (2002-07-31 12:52) [28]

Изыди, нечистая !!! :-))


 
ЮЮ   (2002-07-31 12:56) [29]

Если хочешь от меня избавиться - регистрируйся ! Народ хочет знать своих героев ! Особенно тех, кто много и правильно отвечает !


 
ЮЮ(темный)   (2002-07-31 13:09) [30]

Молодец ! Я растворяюсь навсегда ! Прощай !
И будь поскромнее !



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

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

Наверх





Память: 0.5 MB
Время: 0.008 c
3-70983
ППавел
2002-07-31 09:52
2002.08.22
Длинна базы данных


1-71081
michael_b
2002-08-12 10:32
2002.08.22
есть ли функция обратная Trim


3-71018
Naik
2002-07-31 15:32
2002.08.22
Помогите чайнику разобраться с использованием BDE


14-71317
Слесарь нематерящийся
2002-07-26 07:49
2002.08.22
Прога


3-70959
Noname123
2002-08-02 23:18
2002.08.22
Execl в Delphi 6





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