
نوشته شده توسط
arshad89
سلام
از group by وقتی استفاده می کنی که می خواهی اطلاعاتت را بر طبق یک یا چند فیلد دسته بندی کنی.
زمانی که میخواهی توابع محاسباتی را در بخش where بیاوری،sql چنین اجازه ای نمی دهد. شرط مربوطه را در قسمت having می آوری.
**وقتی میخواهی having در دستورت بیاوری حتما باید از Group By در دستور sql استفاده کنی.
** هر فیلدی که در قسمت select می آوری در قسمت Group By هم باید آورده شود.
یه جستجو تو سایت بزنی مطالب کاملتری میتونی پیدا کنی.
سلام دوست من،
در مورد خطی که با رنگ صورتی در آورده شده: هیچ الزام و ضروریتی وجود نداره، شما می تونید بدون استفاده از ماده ی group by از having بهره مند شوید. بطور مثال:
SELECT MAX(i) FROM table_name
HAVING MAC(i) >100
در مورد خط نارنجی: اگر آن فیلد در یک تابع تجمعی استفاده شود، می توانیم آن را در Group By در نظر نگیریم.