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

Вниз

Знатокам процедур (хотя можно и запрос)   Найти похожие ветки 

 
ASVShade ©   (2005-10-20 21:21) [0]

Имеется таблица T её столбцы:
T.s1 - свойство1
T.s2 - свойство2
T.a  - некое число

Нужен запрсос(хранимая процедура) возвращающий
select s1, s2, a, aa, t

Где s1,s2,a исходные данные
aa - сумма всех a, где одинаковые s1
t - может быть (1,2 или 3)
1 - если s1 ранее не встречалось
2 - если s1 встречалось, а s2 не встречалось
3 - встречались и s1 и s2

Обязательное условие - менять порядок записей нельзя. Перебирать записи как они будут даны сервером.
(Пояснение: данные выданы процедурой, путём рекурсивной пробежки по дереву. Нужно выделить уникальные ветки (листики) и сосчитать сумму одинаковых веток(листиков))
Пример работы правильного запроса:

исходные данные
s1 s2 a
100 0 2
50 100 2
51 50 2
52 50 2
200 0 3
50 200 3
51 50 3
52 50 3
50 0 2
51 50 2
52 50 2
51 0 4
600 0 1

ответ
s1 s2 a aa t
100 0 2 2 1
50 100 2 7 1
51 50 2 11 1
52 50 2 7 1
200 0 3 3 1
50 200 3 7 2
51 50 3 11 3
52 50 3 7 3
50 0 2 7 2
51 50 2 11 3
52 50 2 7 3
51 0 4 11 2
600 0 1 1 1


 
evvcom ©   (2005-10-21 09:20) [1]

Это такие задачи в детском саду задают? Причем даже не говоря на чем реализовать?


 
ASVShade_   (2005-10-21 21:03) [2]

Ну пусть будут в детском саду.
Сервер IB6.5
Язак программирования Дельфя7

Уже неделю мучаюсь :(


 
Diesel_x34   (2005-10-28 09:48) [3]

Слушай, поле "аа" вытащить не проблема...

select s1, s2, a,
(select sum(a) from ta where s1 = ownta.s1 group by s1) as aa
from ta ownta


А вот "t"... Может легче это в Дельфи сделать?



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

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

Наверх




Память: 0.44 MB
Время: 0.043 c
2-1130472029
Alex7
2005-10-28 08:00
2005.11.20
Раздел Initialization


2-1131216750
Groof
2005-11-05 21:52
2005.11.20
Помоги, люди добрые...


2-1131051303
Toxa_ua
2005-11-03 23:55
2005.11.20
~ ?


3-1128617563
Michael5
2005-10-06 20:52
2005.11.20
Скролл "колесиком" в DBGrid работает только в видимой части грида


3-1128951085
MakNik
2005-10-10 17:31
2005.11.20
похоже на блокировку таблиц....?...





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