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

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

            • صفحه نخست
            • مدرسه ی تجاری اپ آموزش پایگاه داده
            • آموزش SQL Server – قسمت شانزدهم
            آموزش SQL Server
            آموزش SQL Server – قسمت پانزدهم
            13 خرداد 1395
            آموزش برنامه نویسی اندروید
            تبادل اطلاعات بین اکتیویتی ها با اینتنت (Intent)
            16 خرداد 1395
            منتشر شده توسط مدیر سایت
            آموزش SQL Server

            آموزش SQL Server

            در قسمت پانزدهم آموزش SQL Server ،توابع (Functions) در SQL Server را به شما آموزش دادیم و همچنین تابعی ساختیم که خروجی آن از نوع جدول بود. دراین قسمت میخواهیم جدول ساخته شده را مشاهده و بررسی کنیم با ما همراه باشید…

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

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

            خروجی توابع در SQL Server

            در آموزش قبل ما تابعی ساختیم که خروجی آن از نوع جدول بود .رفتار جدول را داشت ،حال میخواهیم جدول ساخته شده را مشاهده و بررسی کنیم پس به مثال زیر دقت کنید

            Create Function NewTable(@code int)
            
            Returns @Result Table
            
            (
            
             Code int Identity ,
            
             Name Nvarchar(50)
            
            )
            
            AS
            
            Begin
            
            Insert @Result
            
            Select Name_Ketab
            
            From Tbl_Ketab
            
            Where Code_Ketab=@code
            
            Return
            
            End
            

            در مثال فوق ما یک تابع با نام NewTable ساخته ایم که یک پارامتر ورودی دریافت میکند  به نام @code که ار نوع Integer نیز میباشد و خروجی ان نیز از نوع جدول و با نام @Result میباشد سپس برای جدول موقت فیلد های Code و Name را تعریف کرده ایم که فیلد کد از نوع Integer و شناسه جدول تعیین شده و فیلد Name که از نوع Nvarchar(50) میباشد سپس کلمات کلیدی As و Begin که دستورات را در بدنه Begin و End مینویسیم که دستورات نوشته شده میگوید مقدار فیلد Name_Ketab از جدول Tbl_Ketab انتخاب کن و در جدول موقت @Result که ساخته ایم درج کن البته به شرط انکه مقدار فیلد Code_Ketab برابر با پارامتر ورودی @code که از کاربر میگیرد برابر باشد.

            حال میخواهیم مقداری به تابع داده و نتیجه را مشاهد کنیم پس دستورات زیر را در ادامه ذکر میکنیم

            توابع در SQL Server

            توابع در SQL Server

            همانند تصویر فوق دو خط کدی که هایلایت شده را اضافه میکنیم که یک کوری ساده Select میباشد که تمام مقادیر از تابعی که ساختیم را انتخاب میکند و چون خروجی تابع NewTable از نوع Table تعیین شده میتوان Select را روی ان انجام داد چون خروجی این تابع دیگر رفتاری مثل جداول دارد همچنین یک مقدار به عنوان ورودی نیز به تابع داده ایم که پس از اجرا نتیجه مطلوبی خواهیم داشت.

            حال میخواهیم از تمامیه ویژگی هایی که تا به حال اموزش داده ایم مثل پروسیجرها و توابع و .. در این مثال استفاده کنیم.برای این مثال ما دوتابع مجزا میسازیم سپس از ان دوتابع در پروسیجر استفاده میکنیم

            Create Function TotalRentPerMonth(@code int,@month int)
            
            Returns int
            
            As
            
            Begin
            
              Return (
            
                       Select Isnull(Sum (Tbl_Amanat.tedad*Qeymat),0)
            
                                From Tbl_Ketab,Tbl_Amanat
            
                                Where Tbl_Ketab.Code_Ketab=Tbl_Amanat.Code_Ketab
            
                                And Month(Tbl_Amanat.Zaman_Daryaft)=@month
            
            (
            
            End
            

            تابع فوق دو مقدار کد و شماره ماه را از ورودی میگیرد و حاصل ضرب مقدار فیلد قیمت و تعداد کتاب را در ماهی که به امانت رفته شده را بر میگرداند و اگر هم در ان ماه کتابی به امات نگرفته شده باشد مقدار صفر را نمایش میدهد همچنین از Aggrigate Function هم برای بدست اوردن شماره ماه از تازیخ دریافت کتاب استفاده شده.حتی میتوان همین تابع را اجرا کرده و نتیجه را گرفت با استفاده از دستورات زیر

            Go
            
            Select dbo.TotalRentPerMonth(7,8)
            

             

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

            Go
            
            Create Function YearMonthCompare(@code int)
            
            Returns @Result1 Table
            
            (
            
             MonthNum int ,
            
             FirstMonth int ,
            
             SecondMonth int
            
            )
            
            AS
            
            Begin
            
            Declare @count int=1
            
            While(@count<13)
            
            Begin
            
             Insert @Result1
            
             Select     @count,dbo.TotalRentPerMonth(@code,@count- 1) ,dbo.TotalRentPerMonth(@code,@count)
            
            Set @count+=1
            
            End
            
            Return
            
            End
            

            در تابع فوق میزان قیمت کتاب هایی که در ماه وارد شده و یک ماه قبل تر را نمایش میدهد در این تابع که خروجی ان به شکل جدول است و سه فیلد برای ان تعیین شده و در بدنه  این تابع یک حلقه While ذکر شده که در ان از ۱ تا ۱۲ را میشمارد به عنوان ۱۲ ماه و هر ماه را توسط شمارنده @counter چک میکند و در دوماه نتیجه را نشان میدهد و همانگونه که مشاهده میکنید در حلقه While از تابعی که در بالا گفته شد استفاده شده و در اخر نیز بدنه حلقه و تابع را میبندیم.

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

            Go
            
            Select * From dbo.YearMonthCompare(8)
            

             

            توسط دستورات فوق نتیجه این تابع را هم میتوان مشاهده کرد

            توابع در SQL Server

            توابع در SQL Server

            نتیجه تابع به صورت تصویر فوق است همانگونه که مشاهده میکنید در ماههایی که کتابی با کد ۸  به امانت رفته مقدار فیلد تعداد و قیمت ان کتاب در هم ضرب و سپس جمع میشوند و نمایش داده میشوند.

            حال میخواهیم از پروسیجری استفاده کنیم که سود و زیان امانت هارا به ما نمایش دهد پس به صورت زیر دستورات را مینویسیم

            Go
            
            Create Procedure FinalYearChart(@code int)
            
            AS
            
            Begin
            
            Select MonthNum,Case
            
                            When FirstMonth < SecondMonth Then 'sood'
            
                                                When FirstMonth > SecondMonth Then 'Zian'
            
                                                Else 'Sabet'
            
                                                End,
            
                                                Cast(SecondMonth As Float)
            
            From YearMonthCompare(@code)
            
            End
            

            همانگونه که در پروسیجر تعریف شده فوق مشاهده میکنید ما ابتدا یک پارامتر ورودی با عنوان کد تعیین کرده ایم و در ادامه از Case استفاده شده که اگر ماه اول از ماه دوم کوچکتر باشد به معنی سود و اگر بزرگتر بود به عنوان زیان نمایش داده میشود در غیر این صورت مقدار ثابت است و مقدار رشته ایه Sabet را نمایش میدهد و عبارت Cast که تعریف شده بدین معنی است که فیلد SecondMonth را به نوع Float تبدیل میکند چون ممکن است که در توابع بالا نتیجه حاصل ضرب و جمع ها از نوع Int بیشتر شود به همین دلیل بدین صورت انرا به نوع دیگر تبدیل میکنیم.

            به عبارت دیگر این پروسیجر شماره ماهها و سود وزیان را براساس تابع قبل که رفتار جدول داردمشخص کرده و نمایش میدهد. پس از نوشتن این دستورات برای دیدن نتیجه باید به مسیر ذخیره پروسیجر برویم که به شرح زیر میباشد Library/Programmability/Stored Procedure و به روی پروسیجر ساخته شده کلیک راست کرده و Execute Stored Procedure.. را کلیک میکنیم و یک مقدار به عنوان کد کتاب به ورودی میدهیم و انرا اجرا میکنیم

            توابع در SQL Server

            توابع در SQL Server

            همانگونه که در تصویر فوق مشاهده میکنید ما یک مقدار ورودی در قسمت Value میدهیم که کد کتاب محسوب میشود و ok را کلیک میکنیم و نتیجه را به صورا فوق خواهیم دید.

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

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

            آموزش 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
            سفارش پروژه
                      هیچ نتیجه ای یافت نشدمشاهده همه نتایج