Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.06.29;
Скачать: CL | DM;

Вниз

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;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.027 c
9-1111255090
Кирилл
2005-03-19 20:58
2005.06.29
GLScene


1-1117963373
Mihail
2005-06-05 13:22
2005.06.29
Глупейшая проблема


1-1117622833
chili
2005-06-01 14:47
2005.06.29
Подскажите как работать с libpq.dll для 8.0?


1-1117875729
Masta Hookah
2005-06-04 13:02
2005.06.29
COPY FILE


1-1118218505
Иванушка
2005-06-08 12:15
2005.06.29
Общий вопрос