Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Existují tři typy funkcí:
- a)Skalární(Scalar-valued) = funkce která vrací jeden hodnotový datový typ tj.varchar nebo int nebo .... Např.
- CREATE FUNCTION [sp_SkalarniFunkce](
- @parametr int,
- @parametr2 int
- )
- returns int
- AS
- BEGIN
- RETURN 10
- END
- b)Inline Tabulková(Table-valued) = funkce vrací data jako tabulku, u inline nelze mít tělo funkce ale je to pouze na jeden řádek proto inline např. (Netřeba definovat strukturu vrácené tabulky)
- CREATE FUNCTION [sp_InlineTableValuedFunkce](
- @parametr int,
- @parametr2 int
- )
- returns table
- AS RETURN (SELECT * FROM [dbo].Benefit WHERE BenefitID = @parametr AND [Order] = @parametr2)
- c)Multi Tabulková(Table-valued) = funkce vrací data jako tabulku, je možné definovat tělo funkce a v něm dělat logiku. Funkce je na více řádků. Je potřeba definovat strukturu vrácené tabulky na začátku). Např.
- CREATE FUNCTION [sp_MultiTableValuedFunkce](
- @parametr int,
- @parametr2 int
- )
- returns @retResult table
- (
- BenefitID int,
- [Name] varchar(50),
- [Order] int
- )
- AS
- BEGIN
- INSERT @retResult SELECT * FROM [dbo].Benefit WHERE BenefitID = @parametr AND [Order] = @parametr2
- RETURN
- END
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement