MariaDB - Maddeye Göre Sırala

ORDER BYcümle, önceki tartışmalarda belirtildiği gibi, bir ifadenin sonuçlarını sıralar. Üzerinde işlenen verilerin sırasını belirtir ve artan (ASC) veya azalan (DESC) sırayla sıralama seçeneğini içerir. Sipariş spesifikasyonunun ihmal edilmesi durumunda, varsayılan sıra artan.

ORDER BY yan tümceleri DELETE ve UPDATE gibi çok çeşitli ifadelerde görünür. Her zaman bir ifadenin sonunda görünürler, bir alt sorguda veya bir ayarlı işlevden önce değil, çünkü sonuçtaki son tabloda çalışırlar. Ayrıca bir sütunu tanımlamak için bir tamsayı kullanamazsınız.

Aşağıda verilen ORDER BY cümlesinin genel sözdizimini gözden geçirin -

SELECT field, field2,... [or column] FROM table_name, table_name2,...
ORDER BY field, field2,... ASC[or DESC]

Komut isteminde veya bir PHP betiğinde ORDER BY yan tümcesi kullanın.

Komut İstemi

Komut isteminde, standart bir komut kullanın -

root@ host# mysql -u root -p password;
Enter password:*******
mysql> use PRODUCTS;
Database changed

mysql> SELECT * from products_tbl ORDER BY product_manufacturer ASC
+-------------+----------------+----------------------+
| ID_number   | Nomenclature   | product_manufacturer |
+-------------+----------------+----------------------+
| 56789       | SuperBlast 400 | LMN Corp             |
+-------------+----------------+----------------------+
| 67891       | Zoomzoom 5000  | QFT Corp             |
+-------------+----------------+----------------------+
| 12347       | Orbitron 1000  | XYZ Corp             |
+-------------+----------------+----------------------+

Cümleye Göre Sırayı Kullanan PHP Betiği

Kullanın mysql_query() ORDER BY yan tümcesini kullanan ifadelerde bir kez daha işlev -

<?php
   $dbhost = 'localhost:3036';
   $dbuser = 'root';
   $dbpass = 'rootpassword';
   $conn = mysql_connect($dbhost, $dbuser, $dbpass);
   
   if(! $conn ) {
      die('Could not connect: ' . mysql_error());
   }

   $sql = 'SELECT product_id, product_name, product_manufacturer, ship_date 
      FROM products_tbl ORDER BY product_manufacturer DESC';

   mysql_select_db('PRODUCTS');
   $retval = mysql_query( $sql, $conn );

   if(! $retval ) {
      die('Could not get data: ' . mysql_error());
   }

   while($row = mysql_fetch_array($retval, MYSQL_ASSOC)) {
      echo "Product ID :{$row['product_id']} <br> ".
         "Name: {$row['product_name']} <br> ".
         "Manufacturer: {$row['product_manufacturer']} <br> ".
         "Ship Date : {$row['ship_date']} <br> ".
         "--------------------------------<br>";
   }

   echo "Fetched data successfully\n";
   mysql_close($conn);
?>

Başarılı veri alımında aşağıdaki çıktıyı göreceksiniz -

Product ID: 12347
Nomenclature: Orbitron 1000
Manufacturer: XYZ Corp
Ship Date: 01/01/17
----------------------------------------------
Product ID: 67891
Nomenclature: Zoomzoom 5000
Manufacturer: QFT Corp
Ship Date: 01/01/17
----------------------------------------------
Product ID: 56789
Nomenclature: SuperBlast 400
Manufacturer: LMN Corp
Ship Date: 01/04/17
----------------------------------------------
mysql> Fetched data successfully