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

Вниз

SQL: выбор полей из таблицы + значения возвращённые процедурой.   Найти похожие ветки 

 
Prohodil Mimo ©   (2005-05-19 10:50) [0]

Есть таблица и процедура, возможно ли сделать запрос на выбор всех записей из DARBNIEK + DAR_FONDSUM из процедуры или весь выбор необходимо переносить в процедуру и использовать FOR SELECT?
Это пример сильно упрощённый, в процедуре будет не сложение полей.

CREATE TABLE DARBNIEK
(
ID_DAR INTEGER Not Null,
DAR_VARDS VARCHAR(15),
DAR_UZV VARCHAR(15),
DAR_ALGF DOUBLE PRECISION,
DAR_ATVF DOUBLE PRECISION,
PRIMARY KEY (ID_DAR)
);

CREATE PROCEDURE GET_DAR_FOND_SUM(IDDAR INTEGER)
  RETURNS (DAR_FONDSUM DOUBLE PRECISION)
AS
BEGIN
  SELECT DAR_ALGF+DAR_ATVF
  FROM DARBNIEK
  WHERE ID_DAR = :IDDAR
  INTO :DAR_FONDSUM;
  SUSPEND;
END;


 
Johnmen ©   (2005-05-19 11:10) [1]

Можно.
И вообще процедура здесь совсем лишняя.


 
DSKalugin ©   (2005-05-19 11:13) [2]

4 раза перечитал вопрос, но так и не понял что хочет автор.
Вроде и не много пил вчера, всего 1,5л

Попробуй пождругому сформулировать вопрос и саму задачу поясни.

>выбор всех записей из DARBNIEK + DAR_FONDSUM

Как прибавить число к набору данных?


 
Prohodil Mimo ©   (2005-05-19 11:31) [3]

хех... сказал же что это только пример упрощённый.

функция что-то делает, возвращает результат, и этот результат надо прицепить для конкретной строки для которой выполнялась функция.

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

DAR_VARDS | DAR_UZV | DAR_ALGF | DAR_ATVF | DAR_FONDSUM

?


 
Prohodil Mimo ©   (2005-05-19 11:38) [4]

У меня есть таблица, несколько численных полей и одно строковое в котором находится формула расчёта. Для каждой записи - своя формула. вместо "SELECT DAR_ALGF+DAR_ATVF" будет "SELECT формула".


 
Johnmen ©   (2005-05-19 11:44) [5]

SELECT ...,
(SELECT DAR_FONDSUM
 FROM GET_DAR_FOND_SUM(...)
 WHERE ...) AS YourSuperSUM
FROM DARBNIEK
...


 
Prohodil Mimo ©   (2005-05-19 11:51) [6]

Johnmen ©   (19.05.05 11:44) [5]
Спасибо! заработало, но только такой вариант:

SELECT ...,
(SELECT DAR_FONDSUM
FROM GET_DAR_FOND_SUM(...)) AS YourSuperSUM
FROM DARBNIEK
...



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

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

Наверх





Память: 0.46 MB
Время: 0.038 c
1-1117622499
Ega23
2005-06-01 14:41
2005.06.29
Динамические массивы - правильно ли я понял help?


4-1115450526
hwmaster
2005-05-07 11:22
2005.06.29
как проверить сколько свободного места осталось в оперативке ?


14-1117565007
NightStranger
2005-05-31 22:43
2005.06.29
С чего все начинали


9-1111248448
Fosgen
2005-03-19 19:07
2005.06.29
Возможно ламерский вопрос по GLScene


1-1118066050
N
2005-06-06 17:54
2005.06.29
dxTreeList





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