Возвращает данные для двух столбцов из двух таблиц и выполняет вычисления для них с помощью хранимой процедуры

#asp.net #sql-server #stored-procedures

#asp.net #sql-сервер #хранимые процедуры

Вопрос:

Мини-система учета сотрудников, у меня есть две таблицы: таблица employees_salaries и таблица пособий, в каждой из которых есть столбец employee_id для их соединения.

Я хочу вернуть значение в столбце basic_salary из таблицы employees_salaries и вернуть значение в столбце allowance_value из таблицы allowance и выполнить над ними операцию суммирования и вставить результат в столбец Net_salary в таблице employees_salaries.

я хочу сделать это с помощью хранимых процедур Sql server.

Диграмма для таблиц базы данных

Ответ №1:

Создайте скалярную функцию и верните сумму припуска из таблицы припусков

 CREATE FUNCTION dbo.GetValue(@EmpID INT)
RETURNS INT
AS 
SELECT allowance_value
FROM [allowance table]
WHERE E_ID = @EmpID
 

А затем измените таблицу зарплат сотрудников и добавьте новый столбец

Передавая EmployeeID, вы можете получить данные

 ALTER TABLE dbo.employees_salaries 
ADD NewColumnName AS (dbo.GetValue(employees_salaries.[EmpId Column])   employees_salaries.[Basic pay Col])