tejariapp-new-logotejariapp-new-logotejariapp-new-logotejariapp-new-logo
  • صفحه اصلی
  • پروژه ها
    • پروژه طراحی سایت
    • پروژه های اندروید
    • پروژه های تحت ویندوز
    • UI & UX
    • ربات تلگرام
  • سفارش پروژه
    • انجام پروژه اندروید (Android)
    • طراحی و ساخت اپلیکیشن موبایل
    • انجام پروژه طراحی سایت با php
    • انجام پروژه طراحی سایت با Asp.net
    • انجام پروژه سی شارپ
    • فرم سفارش پروژه
  • مدرسه ی تجاری اپ
    • طراحی سایت
    • اندروید
    • سی شارپ
    • آموزش پایگاه داده
    • برنامه های کاربردی
  • لینک های مفید
    • پرداخت آنلاین
    • درباره تجاری اپ
    • تماس با ما
استخدام برنامه نویس متلب
سفارش پروژه
✕
            هیچ نتیجه ای یافت نشدمشاهده همه نتایج

            آموزش SQL Server – قسمت پانزدهم

            • صفحه نخست
            • مدرسه ی تجاری اپ آموزش پایگاه داده
            • آموزش SQL Server – قسمت پانزدهم
            آموزش برنامه نویسی اندروید
            کار با Intent و دریافت نتیجه از اکتیویتی با اینتنت
            12 خرداد 1395
            آموزش SQL Server
            آموزش SQL Server – قسمت شانزدهم
            14 خرداد 1395
            منتشر شده توسط مدیر سایت
            آموزش SQL Server

            آموزش SQL Server

            در قسمت چهاردهم آموزش SQL Server ،دستورات Case در برنامه SQL را به شما آموزش دادیم. دراین قسمت  قصد داریم توابع (Functions) در SQL Server را به شما آموزش بدیم.

            آموزش SQL Server – قسمت پانزدهم

            توجه : برای مشاهده ی تصاویر در سایز اصلی بر روی آنها کلیک کنید.

             

            توابع(Functions)

            در این قسمت میخواهیم با توابع کار کنیم که یکی دیگر از امکاناتی هست که SQL در اختیار ما قرار داده ما در کل دو نوع تابع متفاوت در SQL داریم که حال میخواهیم با نوع SCALAR ان کار کنیم برای اینکار نیز مانند اموزش های قبل با رفتن به قسمت New Query و انتخاب بانکی که میخواهیم دستوراتمان به روی ان اعمال شود تابعی میسازیم.

            شکل کلی تابع به صورت زیر میاشد

            CREATE FUNCTION Function_Name(Parametrs)
            
            RETURN Output_Type
            
            AS
            
            BEGIN
            
            COMMANDS…
            
            RETURN Output
            
            END>
            

            حال میخواهیم تابعی ساده بنویسیم.به مثال زیر توجه کنید :

            Create Function SumAmanat(@Code int)
            
            Returns int
            
            AS
            
            Begin
            
            Declare @Result int=(
            
                                                           Select COUNT(*)
            
                                                            From Tbl_Amanat
            
                                                            Where Tbl_Amanat.Code_Ketab=@Code
            
                                                            )
            
            Return @Result        
            
            End
            

            در مثال بالا ما تابعی با نام SumAmanat با کلمات کلیدی Create Function ساخته ایم که برای ان پارامتری نیز در نظر گرفته ایم متغیری با نام @Code از نوع int در خط دوم نیز با کلمه کلیدی Return  نوع خرئجی تابع را مشخص کرده ایم و سپس کلمات کلیدی As و Begin و حال دستورات را مینویسیم که در اینجا ما متغیری با نام @Result از نوع int که محتوی ان یک کوری میباشد که تعداد همه چیز را در جدول امانت مشخص میکند جایی که فیلد کد کتاب در این جدول برابر پارامتر ورودی تابع باشد و سپس هم متغیر را به عنوان مقدار بازگشتی تابع با کلمه Return برمیگرداند و در اخر هم بدنه تابع را با کلمه End  میبندیم

            پس از اجرای این دستورات عبارت Command(s) completed successfully را خواهید دید بدن معنی که این تابع ساخته شده و در مسیر Library/Programmability/Functions/Scalar-valued Functions ذخیره شده.

            حال برای دیدن نتیجه این تابع دستورات زیر را میتوان نوشت

            توابع در SQL Server

            توابع در SQL Server

            همانگونه که در تصویر فوق مشاهده میکنید ما دستورات Go و سپس یک کوری ساده که دو مقدار را به ما نمایش میدهد را نوشتیم که یکی از انها نام کتاب Name_Ketab  و دیگری dbo.SumAmanat که همان تابعی است که در بالا نوشتیم و به این نکته توجه داشته باشید که *زمان استفاده از UDF ها یا همان User Define Function ها که خودتان ساخته اید باید برای قید کردن نام تابع از عبارت dbo.  قبل ان استفاده کرد و با گزاشتن کاراکتر . نام توابعی که ساخته اید را مشاهده خواهید کرد* و میتوانید یکی را انتخاب کنید و پارامتر ورودی به ان دهید که در اینجا ما از فیلد Code_Ketab در جدول کتاب به عنوان پارامتر استفاده کرده ایم پس از هایلایت کردن و کلیک کردن دکمه Execute نتیجه فوق را مشاهده میکنید.

            حال میخواهیم از نوع دیگر تابع با نام Multi Statement Function ها اسنا شویم که تفاوتی که با Scalar Function  ها یا همان UDF ها که قبلا گفتیم دارند این است که میتوانند چندین پارامتر ورودی داشته باشند و در نهایت میتوانند مقادیر خروجی بیش از یکی هم داشته باشند مثلا یک جدول را برگردانند.

            برای اشنایی بیشتر با این نوع توابع به مثال زیر توجه کنید

            Create Function CalcRange(@min int, @max int)
            
            Returns Table
            
            AS
            
            Return (
            
                    Select Code_Ketab
            
                             From Tbl_Amanat
            
                             Where ID Between @min And @max
            
                             )
            
            Go
            
            Create Function CalcRent(@min int,@max int)
            
            Returns Table
            
            As
            
            Return
            
            (
            
              Select Name_Ketab,Sum(Tbl_Ketab.tedad* Tbl_Ketab.Qeymat) As Total
            
              From Tbl_Amanat,Tbl_Ketab
            
              Where Tbl_Amanat.Code_Ketab=Tbl_Ketab.Code_Ketab
            
              And Tbl_Amanat.ID in (
            
                                             Select * From
            
                                             dbo.CalcRange(@min,@max)
            
                                                                                       ) 
            
              Group By Name_Ketab,Tbl_Amanat.Code_Ketab
            
            (
            

            در شبه کد فوق ما ابتدا تابعی با نام CalcRange(@min int, @max int) را با دو پارامتر ساخته ایم که طبق گفته های قبل بدنه و خروجی و… انرا تعیین کرده و کوری به عنوان نتیجه تابع ذکر کرده ایم که نتیجه ان رکوردهاییست که ای دی انها بین دو پارامتر ورودی @min و @max قرار دارد که به صورت جدول نیز میباشد همانگونه که مشاهده میکنید نوع خروجی از نوع Table گفته شده.

            تابع دوم نیز دارای پارامترهای یکسان با تابع قبل است و خروجی ان نیز از نوع جدول و نتیجه کوری که میخواهد به عنوان خروجی رد کند نیز در اموزش های قبل توضیح  داده شده در واقع این کوری میگوید نام و جمع حاصل ضرب فیلد های تعداد و قیمت را از جداول امانت و کتاب انتخاب کن اگر شرایط زیر را داشته باشند که این شرایط نیز شامل یکی شرط جوین شدن دو جدول میباشد که در اموزش های قبل بسیار توضیح داده شده و دیگری میگوید اگر فیلد ای دی در جدول امانت جز نتیجه تابع قبل بود Select را انجام بده به عبارت دیگر رکورد هایی برای این تابع اتخاب شوند که ای دی انها جز خروجی تابع بالا باشند. و در اخر نیز Group By را انجام داده ایم که نتیجه براساس فیلدهای ذکر شده نمایش داده شود.

             

            مدرس : خانم مهندس داودی نژاد

            آموزش SQL Server – قسمت چهاردهم

             

            اشتراک گذاری

            پست های مرتبط

            دستورات جریان کنترل (Control flow statements) یا دستورات شرطی و حلقه ها در زبان برنامه نویسی دارت Dart

            دستورات جریان کنترل (Control flow statements) یا دستورات شرطی و حلقه ها در زبان برنامه نویسی دارت Dart

            30 بهمن 1400

            دستورات شرطی و حلقه ها در زبان برنامه نویسی دارت (Dart)


            ادامه مطلب
            آموزش عملگرها یا Operator ها در زبان برنامه نویسی دارت یا Dart

            آموزش عملگرها یا Operator ها در زبان برنامه نویسی دارت یا Dart

            30 بهمن 1400

            آموزش عملگرها یا Operator ها در زبان برنامه نویسی دارت (Dart)


            ادامه مطلب
            توابع در زبان برنامه نویسی دارت (Dart)

            توابع در زبان برنامه نویسی دارت (Dart)

            27 بهمن 1400

            توابع در زبان برنامه نویسی دارت (Dart)


            ادامه مطلب

            دیدگاهتان را بنویسید لغو پاسخ

            نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

            ساخت اپلیکیشن های موبایل

            • ساخت اپلیکیشن فروشگاهی
            • ساخت اپلیکشن ابزاری و خدماتی
            • ساخت اپلیکیشن آموزشی
            • و هزاران موضوع دیگر

             
            کلیک کنید

            آخرین دیدگاه ها

            • 9 اسفند 1401

              مهری اصغری نظر در پیاده سازی اولین پروژه با فلاتر Flutter

            • 26 آبان 1401

              سجاد نظر در پروژه مدیریت سیستم مدرسه با سی شارپ و sql server

            • 7 خرداد 1401

              داودی نظر در آموزش استفاده از ckeditor همراه با آپلود عکس در لاراول 6

            تجاری اپ در شبکه های اجتماعی

            لوگوی تایید پرداخت آنلاین

            2015-2022 © تمامي حقوق مادي و معنوي اين وب سايت نزد تجاری اپ محفوظ بوده و هر گونه کپي برداري از مطالب پيگرد قانوني به همراه دارد! | طراح سایت : ProgRun
            سفارش پروژه
                      هیچ نتیجه ای یافت نشدمشاهده همه نتایج