اخیراً کوئرا فروشگاهی به نام کوئراشاپ تأسیس کرده و میخواهد دسترسی راحتی به اطلاعاتی که در پایگاهدادهی فروشگاه ذخیره شده، داشته باشد. بنابراین قصد داریم تعدادی کوئری برای دریافت این اطلاعات بنویسیم.
پروژهی اولیه را از این لینک دانلود کنید. ساختار فایلهای این پروژه بهصورت زیر است.
پایگاهداده و مدلها از پیش طراحی شدهاند و جزئیات آن به صورت زیر است.
شرکت/Company
محصول/Product
کارمند/Employee
مشتری/Customer
سفارش/Order
جزئیات طراحی مدلها را در فایل models.py
در پروژهی اولیه مطالعه کنید.
۱. کوئریست کارمندان با سن کمتر از ۳۰ سال که شغل دادهشده را دارند
۲. لیست اسامی کالاهایی که قیمت آنها از میانگین قیمت تمام محصولات فروشگاه کمتر است (به ترتیب صعودی قیمت)
۳. کوئریست نام هر شرکت و تعداد کل محصولات فروختهشده (شامل تاپلهایی به صورت (name, sold)
)
۴. مجموع درآمد فروشگاه بین دو تاریخ دادهشده
۵. کوئریست نام و شمارهی موبایل مشتریان طلاییای که در یک ماه گذشته بیش از ۱۰ خرید داشتهاند (شامل تاپلهایی به صورت (name, phone)
)
۶. لیست نام تمام شرکتهایی که حداقل ۴ محصول آنها کمتر از ۱۰۰ عدد فروش داشته است
درصورتیکه علاقمندید که خودتان به صورت دستی کوئریهای خود را امتحان کنید و از درستی آنها اطمینان حاصل کنید، یا اینکه به بررسی بیشتر از این مسئله بپردازید، برای راحتی بیشتر شما، فایلهای models.py
و مایگریشنها ساخته شدهاند و شما کافیست که قبل از شروع کار، جهت ایجاد پایگاهداده، یک بار دستور migrate
را اجرا کنید.
علاوهبر این، یک سری دادهی ازپیشآمادهشده، فراهم شده که بعد از اجرای دستور migrate
، میتوانید آنها را وارد پایگاهدادهی پروژهی خود کنید. به این منظور، دستور زیر را اجرا کنید. میتوانید از این دادهها به جهت تست کردن کوئریهای خود استفاده کنید.
۱. ایجاد پایگاهداده
۲. وارد کردن دادههای ازپیشآمادهشده (fixture)
درصورتیکه علاقمند به تست نیستید، نیازی به ایجاد پایگاهداده و وارد کردن دادههای آزمایشی نیست، و تنها کافیست که در فایل queries.py
کوئریهای خود را بنویسید و از کوئرا جهت امتحان کردن درستی کوئریهایتان استفاده کنید.
queries.py
را دارید و تمامی تغییرات دیگر شما در فایلهای پروژه نادیده گرفته خواهند شد. توجه داشته باشید که تمامی بسترهای پروژه آماده شده و کافیست که شما تنها فایل queries.py
را کامل کنید. models.py
با ساختار پایگاهداده، و با مطالعهی test_sample.py
با روش تست کوئریها آشنا شوید.این سؤال از نوع سوالات تکفایل است؛ برای ارسال جواب، فایل پایتونی را که در آن موارد خواستهشده قرار دارد را انتخاب و سپس ارسال نمایید.