آموزش MySQL   >   مرتب سازی اطلاعات خروجی پایگاه داده   >   عبارت Order By

عبارت Order By :

در بخش آموزش دستور Select توضیح دادیم که این دستور برای استخراج و نمایش اطلاعات از یک جدول پایگاه داده استفاده میشود.
اجرای دستور Select اطلاعات تمامی فیلدهای تعیین شده برای آن را بر اساس فیلد اول مرتب کرده و نمایش میدهد.اما ممکن است شما بخواهید اطلاعات را بر اساس مقدار یک فیلد دیگر غیر از فیلد اول و یا دو فیلد بصورت همزمان مرتب نمایید.
برای این منظور بایستی پس از دستور Select نام فیلد یا دو فیلدی که میخواهید اطلاعات خروجی بر اساس آنها مرتب شوند را به ترتیب در مقابل عبارت Order By تعیین کنید.

شکل کلی استفاده از عبارت Order By بصورت زیر است :

Syntax < ? php
SELECT column_name(s)
FROM table_name
Order By Column_Name(s)    ASC | DESC
  ? >

* column_name = نام فیلد مورد نظر
* ASC = از کم به زیاد ، از پایین به بالا
* DESC = از زیاد به کم ، از بالا به پایین
مثال :   "SELECT * FROM Student
Order By Name "

مثال : در مثال زیر اطلاعات کلی دانشجویان را از جدول Student استخراج کرده و سپس بر اساس فیلد Name مرتب ساخته و در خروجی نمایش داده ایم :

Example < ? php
    $My_Connection = mysql_connect ( " localhost " , " developer " , " Est1381 " ) ;
    if ( ! $My_Connection )
      {
          die( ' Could not connect : ' . mysql_error( ) ) ;
      }
    // در این دستور پایگاه داده مورد نظر را انتخاب کرده ایم
    mysql_select_db ( "my_db", $My_Connection );

    // Name با این دستور اطلاعات دانشجویان را بر اساس فیلد
    // مرتب سازی کرده ایم
    $ result = mysql_query ( "SELECT * FROM Student   Order By Name " ) ;

    // سپس اسامی استخراج شده را با استفاده از یک حلقه نمایش داده ایم
    while($row = mysql_fetch_array($result))
        {
            echo $row['Name'];
            echo " " . $row['Family'];
            echo " " . $row['Age'];
        }
mysql_close($con);
? >

نکته مهم : نکته : بصورت پیش فرض عبارت Order By اطلاعات را بصورت صعودی(کوچک به بزرگ) مرتب میکند.اگر بخواهید این روند معکوس شود بایستی پس از تمام فیلدها عبارت DESC را قرار دهید .

تعیین دو فیلد برای مرتب سازی اطلاعلت خروجی :

 در هنگام استفاده از عبارت Order By میتوانید دو فیلد را برای مرتب سازی اطلاعات تعیین نمایید.برای این منظور باید نام دو فیلد خود را به ترتیب در مقابل عبارت Order By قرار داده و انها را با کاما از هم جدا کنید.
مرتب سازی در این روش بر اساس فیلد اول صورت گرفته و در صورتی که فیلد اول دارای مقادیر یکسانی باشد ، آن رکوردها بر اساس فیلد دوم مرتب خواهند شد.
شکل کلی استفاده از عبارت Order By در این حالت به صورت زیر است :

Syntax < ? php
SELECT column_name(s)
FROM table_name
Order By Column1 , Column2
  ? >

* column1 = نام فیلد اول مورد نظر
* column2 = نام فیلد دوم مورد نظر

مثال :   "SELECT * FROM Student
Order By Name , Family "


راجع این مطلب سوال یا اشکالی دارید ؟! آن را در انجمن سایت مطرح نمایید ...         >>>>>  ورود به انجمن تخصصی


نظر خودتان درباره این صفحه را با ما در میان بگذارید :

آیا مطالب این صفحه برای شما مناسب و مفید بوده است :

نام :                 
آدرس Email :    
 
نظر شما :  
 
سوال امنیتی : پایتخت ایران ؟