Latest web development tutorials

MySQL sortowania

Wiemy, że aby odczytać dane za pomocą SQL SELECT z tabeli MySQL.

Jeśli musimy rodzaj odczytu danych, możemy użyć MySQL ORDER BY, w którym chcesz ustawić sposób, w jaki pola sortowania, a następnie zwrócone w wynikach wyszukiwania.

Struktura bazy danych, a dane użyte w niniejszym dziale Download: w3big.sql .

gramatyka

Poniżej znajduje się instrukcja SQL SELECT używa ORDER BY do sortowania danych kwerendy, a następnie przywrócić dane:

SELECT field1, field2,...fieldN table_name1, table_name2...
ORDER BY field1, [field2...] [ASC [DESC]]
  • Można użyć dowolnego pola jako swego rodzaju warunkach powrotu wyników zapytania posortowane.
  • Można ustawić kilka pól do sortowania.
  • Można użyć słowa kluczowego ASC lub DSC aby ustawić wyniki wyszukiwania w porządku rosnącym lub malejącym. Domyślnie jest to w porządku rosnącym.
  • Możesz dodać klauzulę WHERE ... jak ustawić warunki.

Klauzula ORDER BY w wierszu polecenia

Poniższa użyje ORDER BY na zapytania SELECT do odczytu danych w tabelach danych MySQL w3big_tbl:

Przykłady

Próby następujące przykłady, wyniki będą ułożone w kolejności rosnącej

root@host# mysql -u root -p password;
Enter password:*******
mysql> use w3big;
Database changed
mysql> SELECT * from w3big_tbl ORDER BY w3big_author ASC;
+-----------+---------------+---------------+-----------------+
| w3big_id | w3big_title  | w3big_author | submission_date |
+-----------+---------------+---------------+-----------------+
|         2 | Learn MySQL   | Abdul S       | 2007-05-24      |
|         1 | Learn PHP     | John Poul     | 2007-05-24      |
|         3 | JAVA Tutorial | Sanjay        | 2007-05-06      |
+-----------+---------------+---------------+-----------------+
3 rows in set (0.00 sec)

mysql> SELECT * from w3big_tbl ORDER BY w3big_author DESC;
+-----------+---------------+---------------+-----------------+
| w3big_id | w3big_title  | w3big_author | submission_date |
+-----------+---------------+---------------+-----------------+
|         3 | JAVA Tutorial | Sanjay        | 2007-05-06      |
|         1 | Learn PHP     | John Poul     | 2007-05-24      |
|         2 | Learn MySQL   | Abdul S       | 2007-05-24      |
+-----------+---------------+---------------+-----------------+
3 rows in set (0.00 sec)

mysql> 

W3big_tbl odczytać wszystkie dane w tabeli w kolejności rosnącej według polu w3big_author.


Klauzula ORDER BY w skrypcie PHP

Polecenia można użyć funkcji PHP mysql_query () i umieścić na tym samym SQL SELECT ORDER BY do pobierania danych. Ta funkcja służy do wykonywania poleceń SQL, a następnie () danych wyjściowych dla wszystkich zapytań za pośrednictwem funkcji PHP mysql_fetch_array.

Przykłady

Wypróbuj poniższe przykłady, zwrotów zapytania danych po naciśnięciu malejącej w3big_author dziedzinie.

<?php
$dbhost = 'localhost:3036';
$dbuser = 'root';
$dbpass = 'rootpassword';
$conn = mysql_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
  die('Could not connect: ' . mysql_error());
}
$sql = 'SELECT w3big_id, w3big_title, 
               w3big_author, submission_date
        FROM w3big_tbl
        ORDER BY  w3big_author DESC';

mysql_select_db('w3big');
$retval = mysql_query( $sql, $conn );
if(! $retval )
{
  die('Could not get data: ' . mysql_error());
}
while($row = mysql_fetch_array($retval, MYSQL_ASSOC))
{
    echo "Tutorial ID :{$row['w3big_id']}  <br> ".
         "Title: {$row['w3big_title']} <br> ".
         "Author: {$row['w3big_author']} <br> ".
         "Submission Date : {$row['submission_date']} <br> ".
         "--------------------------------<br>";
} 
echo "Fetched data successfully\n";
mysql_close($conn);
?>