دستور Having در اکسس
اگر تا کنون کوئری ایجاد کرده باشید حتما با کاربرد شرط در کوئری آشنا شده اید و سعی کرده اید در پروژه ها خود از آن استفاده کنید. در حالت عادی شرط را در بخش Criteria از کوئری می نویسیم یا اینکه در کدنویسی SQL از دستور WHERE استفاده می کنیم. اما زمانی که از توابع تجمعی مانند Sum یا Avg استفاده می کنیم آنگاه برای شرط باید از دستور Having استفاده کرد.
ایجاد شرط در کوئری
در جلسات قبل یک کوئری ایجاد شد که معدل دانش آموزان را محاسبه کردیم. کوئری را در نمای Design باز کنید.
خروجی این کوئری به صورت زیر است.
حال فرض کنید بخواهیم معدل افرادی را مشاهده کنیم که تعداد واحدهای خاصی دارند. برای قرار دادن شرط در SQL از دستور Where استفاده می کردیم. اکنون کوئری را در نمای SQL باز کرده و تغییرات را به صورت زیر انجام دهید.
کوئری را اجرا می کنیم. پیغام خطای زیر مشاهده می شود.
علت خطا استفاده از دستور Where است. در اینجا چون از توابع تجمعی (Sum) استفاده شده است بنابراین نمی توان از Where استفاده کرد و باید از Having برای شرط استفاده شود. کوئری را به صورت زیر تغییر دهید.
کوئری را اجرا کنید. اگر خروجی نداشته باشد احتمالا به دلیل این است که دانش آموزی با تعداد واحد بیشتر از ۱۰ واحد نداریم. شرط را تغییر دهید. مثلا به جای ۱۰ واحد ۵ واحد را وارد کنید.
اکنون کوئری را در نمای Design باز کنید.
می توانستیم شرط را در قسمت Criteria وارد کنیم و لزومی ندارد که در حتما در نمای SQL دستور بنویسیم.
فیلم آموزشی دستور Having در اکسس
برای اینکه خیلی خوب کوئری Having را در اکسس یاد بگیرید حتما فیلم آموزشی زیر را تماشا کنید.
برای نوشتن دیدگاه باید وارد بشوید.