بستن منو
۳۳
تعداد کلیدهای این موضوع
لیست همه کلیدهای این موضوع
مباحث اولیه برای آشنایی با SQL
مباحث اولیه برای آشنایی با SQL
15
عملگرها (Operator)، در SQL
عملگرها (Operator)، در SQL
5
متن ها (رشته ها - String)، در SQL
متن ها (رشته ها - String)، در SQL
1
مقدارها (Value)، در SQL
مقدارها (Value)، در SQL
3
عملیات های مربوط به کل پایگاه داده (Database)، در SQL
عملیات های مربوط به کل پایگاه داده (Database)، در SQL
2
عملیات های مربوط به کل جدول (Table)، در SQL
عملیات های مربوط به کل جدول (Table)، در SQL
0
خواندن ردیف ها (Row) از جدول (Table)، در SQL
خواندن ردیف ها (Row) از جدول (Table)، در SQL
0
به روزرسانی (Update) ردیف ها (Row) از جدول (Table)، در SQL
به روزرسانی (Update) ردیف ها (Row) از جدول (Table)، در SQL
0
حذف کردن (Delete) ردیف ها (Row) از جدول (Table)، در SQL
حذف کردن (Delete) ردیف ها (Row) از جدول (Table)، در SQL
0
حذف کردن اطلاعات، در SQL
حذف کردن اطلاعات، در SQL
1
تاریخ (Date) و زمان (Time)، در SQL
تاریخ (Date) و زمان (Time)، در SQL
1
عملیات های ریاضی، در SQL
عملیات های ریاضی، در SQL
3
کار با دستورات (Query ها)، در SQL
کار با دستورات (Query ها)، در SQL
1
مباحث عمومی، در SQL
مباحث عمومی، در SQL
1

26400

نویسنده

علیرضا گلمکانی ( admin )

شماره کلید
دسته کلید - دسته بندی

به دست آوردن تعداد (COUNT)، ماکزیمم (MAX)، مینیمم (MIN)، مجموع (SUM) و میانگین (AVG)، بر اساس تشکیل گروه های (Group) مختلف که بر اساس یکسان بودن در مقدار یک ستون (Column) ایجاد می شوند، با عبارت GROUP BY ، در SQL

فرض کنید که یک جدول (Table) با نام kelidestan_table داریم که دارای ستونی (Column) با نام city می باشد.

همچنین در جدول (Table) مورد نظر، ردیف های (Row) مختلفی وجود دارد که مقادیری مثل shiraz و tehran و yazd برای ستون city از آنها ثبت شده است.

اکنون می خواهیم یک query بنویسیم که بر اساس مقادیر ستون city ، متوجه شویم که مثلا چه تعداد ردیف (Row) با مقدار shiraz برای ستون city و چه تعداد ردیف (Row) با مقدار tehran برای ستون city و چه تعداد ردیف (Row) با مقدار yazd برای ستون city ، وجود دارد.

یعنی گروه هایی (Group) بر اساس یکسان بودن مقدار در ستون city تشکیل شود (مثلا همه ردیف هایی که دارای مقدار shiraz در ستون city هستند، در یک گروه قرار می گیرند) و سپس تعداد آنها شمارش شده (با عبارت COUNT) و برگردانده شود (همچنین مقدار ستون city را هم بر می گردانیم تا بدانیم که تعداد مربوط به چه مقداری است).

برای این منظور، query زیر را می نویسیم :


SELECT COUNT(city), city
    FROM kelidestan_table
        GROUP BY city;

در query بالا، با عبارت GROUP BY city تعیین کرده ایم که گروه بندی باید بر اساس یکسان بودن مقدار در ستون city باشد و همچنین باید دو مقدار COUNT(city) و city برگردانده شود.

به عنوان مثال، اگر در جدول مورد نظر، 4 ردیف با مقدار shiraz برای ستون city و 3 ردیف با مقدار tehran برای ستون city و 2 ردیف با مقدار yazd برای ستون city داشته باشیم، آنگاه نتایج زیر برگردانده می شوند :

طرح رنگ

مثال بالا را برای عبارت COUNT که می تواند برای به دست آوردن تعداد هر گروه (Group) به کار رود، ذکر کردیم.

عبارت های دیگری مثل MAX برای به دست آوردن ماکزیمم (Maximum) هر گروه، عبارت MIN برای به دست آوردن مینیمم (Minimum) هر گروه، عبارت SUM برای به دست آوردن مجموع مقادیر هر گروه و عبارت AVG برای به دست آوردن میانگین (Average) هر گروه، نیز می توانند به همراه عبارت GROUP BY به کار روند.

برای این منظور، باید هر یک از این عبارت ها، به جای عبارت COUNT در query قبلی نوشته شوند، یعنی به صورت زیر (البته در اینجا ستون city دارای مقادیر عددی نیست، ولی فرض می کنیم که اگر دارای مقادیر عددی می بود، آنگاه query های زیر را نوشته و اجرا می کردیم) :


SELECT MAX(city), city
    FROM kelidestan_table
        GROUP BY city;

SELECT MIN(city), city
    FROM kelidestan_table
        GROUP BY city;

SELECT SUM(city), city
    FROM kelidestan_table
        GROUP BY city;

SELECT AVG(city), city
    FROM kelidestan_table
        GROUP BY city;

چون ستون city دارای مقادیر عددی نیست، می توانیم عبارت ها را برای یک ستون (Column) دارای مقادیر عددی (مثلا با نام column_1) بنویسیم (یعنی عبارت های COUNT و MAX و ... را برای هر ستونی از جدول می توانید بنویسید و نیازی نیست که حتما برای ستونی نوشته شود که گروه بندی بر اساس آن می باشد. این مورد، بستگی به نوع نیاز شما برای فراخوانی از جدول دارد). یعنی به صورت زیر :


SELECT MAX(column_1), city
    FROM kelidestan_table
        GROUP BY city;

SELECT MIN(column_1), city
    FROM kelidestan_table
        GROUP BY city;

SELECT SUM(column_1), city
    FROM kelidestan_table
        GROUP BY city;

SELECT AVG(column_1), city
    FROM kelidestan_table
        GROUP BY city;

کپی برداری از محتوای سایت کلیدستان، ممنوع بوده و پیگرد قانونی دارد. (تنها استفاده شخصی کاربر، مجاز است) (کپی برداری توسط سایر وب سایت ها = حرام) (بیشتر بدانید)

به اشتراک گذاری (Share) در شبکه های اجتماعی
نظرات 0 0 0

ارسال نظر جدید (بدون نیاز به عضو بودن در وب سایت)

جستجو در کلیدستان، توسط گوگل

جستجو در عنوان کلیدها

دسترسی سریع

×

شماره کلید


کلید
×

شماره دسته کلید


دسته کلید
×

جستجو


جستجو
بستن منو
۵۶
تعداد کلیدهای این موضوع
لیست همه کلیدهای این موضوع
دسترسی سریع به دسته کلیدها :

SQL Tutorials
مجموعه ویدئوهای آموزشی SQL - مجموعه SQL Tutorials
مجموعه ویدئوهای آموزشی SQL - مجموعه SQL Tutorials
56
بستن منو
۵۴
تعداد کلیدهای این موضوع
لیست همه کلیدهای این موضوع
مباحث اولیه برای آشنایی با MySQL
مباحث اولیه برای آشنایی با MySQL
15
خواندن اطلاعات کلی پایگاه های داده (databases)، در MySQL
خواندن اطلاعات کلی پایگاه های داده (databases)، در MySQL
3
خواندن اطلاعات از جدول ها (tables)، در MySQL
خواندن اطلاعات از جدول ها (tables)، در MySQL
14
تغییر دادن اطلاعات جدول ها (tables)، در MySQL
تغییر دادن اطلاعات جدول ها (tables)، در MySQL
5
تبدیل های مرتبط با پایگاه داده MySQL
تبدیل های مرتبط با پایگاه داده MySQL
1
query های آماده برای ساخت جدول های دارای اطلاعات، برای تست های کدنویسی، در MySQL
query های آماده برای ساخت جدول های دارای اطلاعات، برای تست های کدنویسی، در MySQL
2
کار با اعداد، در MySQL
کار با اعداد، در MySQL
3
استفاده از کلاس mysqli در PHP ، برای کار با پایگاه داده MySQL
استفاده از کلاس mysqli در PHP ، برای کار با پایگاه داده MySQL
4
برنامه phpMyAdmin ، برای کار با پایگاه داده MySQL
برنامه phpMyAdmin ، برای کار با پایگاه داده MySQL
2
مباحث عمومی در MySQL
مباحث عمومی در MySQL
5
بستن منو
۳۳
تعداد کلیدهای این موضوع
لیست همه کلیدهای این موضوع
مجموعه ویدئوهای آموزشی پایگاه داده MySQL - مجموعه MySQL Database Tutorial - از thenewboston.com
مجموعه ویدئوهای آموزشی پایگاه داده MySQL - مجموعه MySQL Database Tutorial - از thenewboston.com
33