Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 функция по одной таблице  [new]
Shiro-kuro
Member

Откуда:
Сообщений: 77
помогите пожалуйста)имеется таблица такая:
CREATE TABLE [dbo].[dolj](
[id dolj] [int] NOT NULL,
[dolj] [int] NOT NULL,
[zarplata] [money] NOT NULL,


нужна пользовательская функция вычисления расходов на зарплату всем сотрудникам и сотрудникам определенной должности.
вот попытка функции для опред должности(восьмой - охраник)
Create function dbo.zarplata(@iddolj int)
Returns money
As
Begin
Declare @plata int
Select @plata=sum(zarplata* count(iddolj))
Where @iddolj=iddolj
Return @plata
End
-----
Select dbo.zarplata(8)

подскажите пожалуйста правильно ли)
4 июн 13, 19:38    [14390980]     Ответить | Цитировать Сообщить модератору
 Re: функция по одной таблице  [new]
Shiro-kuro
Member

Откуда:
Сообщений: 77
и как сделать функции зарплаты для всех должностей?)
4 июн 13, 19:40    [14390984]     Ответить | Цитировать Сообщить модератору
 Re: функция по одной таблице  [new]
Гость333
Member

Откуда:
Сообщений: 3683
Shiro-kuro
Create function dbo.zarplata(@iddolj int)
Returns money
As
Begin
Declare @plata int
Select @plata=sum(zarplata* count(iddolj))
Where @iddolj=iddolj
Return @plata
End
-----
Select  dbo.zarplata(8)


подскажите пожалуйста правильно ли)

Если вы запускали этот скрипт, и результат вас устроил, то правильно.
4 июн 13, 19:52    [14391008]     Ответить | Цитировать Сообщить модератору
 Re: функция по одной таблице  [new]
Shiro-kuro
Member

Откуда:
Сообщений: 77
Гость333,
дело в том что SQL у меня полетел как два дня.поэтому что эта ф-ция возвращает я не уверена...
4 июн 13, 19:56    [14391016]     Ответить | Цитировать Сообщить модератору
 Re: функция по одной таблице  [new]
Shiro-kuro
Member

Откуда:
Сообщений: 77
CREATE TABLE [dbo].[sotr](
[id sotr] [int] IDENTITY(1,1) NOT NULL,
[id dolj] [int] NOT NULL,
[imya] [nvarchar](50) NOT NULL,
[fam] [nvarchar](50) NOT NULL,
[otch] [nvarchar](50) NOT NULL,
[pasport] [int] NOT NULL,
[phone] [int] NULL,
[adres] [nvarchar](50) NULL,
[adres] [nvarchar](50) NULL,


есть еще таблица сотрудников..думаю ее надо тоже в функцию.но как...
4 июн 13, 19:58    [14391022]     Ответить | Цитировать Сообщить модератору
 Re: функция по одной таблице  [new]
Гость333
Member

Откуда:
Сообщений: 3683
Shiro-kuro
Гость333,
дело в том что SQL у меня полетел как два дня

А что мешает восстановить?
5 июн 13, 11:53    [14393364]     Ответить | Цитировать Сообщить модератору
 Re: функция по одной таблице  [new]
Shiro-kuro
Member

Откуда:
Сообщений: 77
Гость333,
не помогает.пробовала.
старый не до конца удалился,новый устанавливаться не хочет...
5 июн 13, 15:13    [14395152]     Ответить | Цитировать Сообщить модератору
 Re: функция по одной таблице  [new]
Glory
Member

Откуда:
Сообщений: 104760
Shiro-kuro
старый не до конца удалился,новый устанавливаться не хочет...

И что мешает использовать один из множества серверов в интернете ?
5 июн 13, 15:17    [14395181]     Ответить | Цитировать Сообщить модератору
 Re: функция по одной таблице  [new]
123321906
Guest
Зарплата по всем сотрудникам

CREATE TABLE [dbo].[dolj](
[iddolj] [int] NOT NULL,
[dolj] [int] NOT NULL,
[zarplata] [money] NOT NULL)
GO
Create function dbo.zarplata(@iddolj int)
Returns @T table (iddolj int , zarpl money)
As
Begin
INSERT INTO @T
SELECT DOLJ.iddolj, DOLJ.zarplata * summ.c -- умножаем на зарплату

FROM
DOLJ
JOIN
(SELECT iddolj, count(dolj) as c --- количество сотрудников
FROM dolj
GROUP BY iddolj) as summ on summ.iddolj = dolj.iddolj

Return
End


Надеюсь не очень запутал, а то я это умею....
5 июн 13, 15:30    [14395270]     Ответить | Цитировать Сообщить модератору
 Re: функция по одной таблице  [new]
1231415a
Guest
прошу прощения, входящий параметр в это функции не нужен
dbo.zarplata()
5 июн 13, 15:33    [14395285]     Ответить | Цитировать Сообщить модератору
 Re: функция по одной таблице  [new]
Shiro-kuro
Member

Откуда:
Сообщений: 77
1231415a,
спасибо!!!!!!!!!всего вас самого хорошего))))))))))))
5 июн 13, 15:35    [14395292]     Ответить | Цитировать Сообщить модератору
 Re: функция по одной таблице  [new]
2314561
Guest
Shiro-kuro, всегда рад помочь, можете записать мой контакт
5 июн 13, 15:40    [14395319]     Ответить | Цитировать Сообщить модератору
 Re: функция по одной таблице  [new]
Shiro-kuro
Member

Откуда:
Сообщений: 77
2314561,
хорошо)давайте)
5 июн 13, 15:45    [14395342]     Ответить | Цитировать Сообщить модератору
 Re: функция по одной таблице  [new]
41234523
Guest
Shiro-kuro, ISQ 390809548
5 июн 13, 15:49    [14395378]     Ответить | Цитировать Сообщить модератору
 Re: функция по одной таблице  [new]
Shiro-kuro
Member

Откуда:
Сообщений: 77
41234523,
а скайпа нету?
5 июн 13, 18:00    [14396346]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить