Tri conditionnel multi-champs MySQL ? Ordre MySQL par instruction/fonction de requête descendante et ascendante

MySQLTri conditionnel multi-champs ?MySQL trier par instruction/fonction de requête descendante et ascendante

Tri MySQL

Nous savons utiliser l'instruction SQL SELECT pour lire les données de la table MySQL.

Si nous devons trier les données lues, nous pouvons utiliser MySQL COMMANDÉ PAR clause pour définir le champ que vous souhaitez trier de quelle manière, puis renvoyer les résultats de la recherche.

grammaire

Voici une instruction SQL SELECT qui utilise la clause ORDER BY pour trier les données de la requête avant de renvoyer les données :

SELECT field1, field2,...fieldN table_name1, table_name2...
ORDER BY field1, [field2...] [ASC [DESC]]
  • Vous pouvez utiliser n'importe quel champ comme condition de tri pour renvoyer des résultats de requête triés.
  • Vous pouvez définir plusieurs champs à trier.
  • Vous pouvez utiliser les mots clés ASC ou DESC pour définir les résultats de la requête à trier par ordre croissant ou décroissant.Par défaut, c'est dans l'ordre croissant.
  • Vous pouvez ajouter des clauses WHERE...LIKE pour définir des conditions.

Utilisation de la clause ORDER BY dans l'invite de commande

Ce qui suit utilisera la clause ORDER BY dans l'instruction SQL SELECT pour lire les données dans la table de données MySQL chenweiliang_tbl :

Exemple

Essayez les exemples ci-dessous et les résultats seront triés par ordre croissant et décroissant.

Tri SQL

mysql> use chenweiliang;
Database changed
mysql> SELECT * from chenweiliang_tbl ORDER BY submission_date ASC;
+-----------+---------------+---------------+-----------------+
| chenweiliang_id | chenweiliang_title | chenweiliang_author | submission_date |
+-----------+---------------+---------------+-----------------+
| 3 | 学习 Java | chenweiliang.com | 2015-05-01 |
| 4 | 学习 Python | chenweiliang.com | 2016-03-06 |
| 1 | 学习 PHP | 陈沩亮博客 | 2017-04-12 |
| 2 | 学习 MySQL | 陈沩亮博客 | 2017-04-12 |
+-----------+---------------+---------------+-----------------+
4 rows in set (0.01 sec)
 
mysql> SELECT * from chenweiliang_tbl ORDER BY submission_date DESC;
+-----------+---------------+---------------+-----------------+
| chenweiliang_id | chenweiliang_title | chenweiliang_author | submission_date |
+-----------+---------------+---------------+-----------------+
| 1 | 学习 PHP | 陈沩亮博客 | 2017-04-12 |
| 2 | 学习 MySQL | 陈沩亮博客 | 2017-04-12 |
| 4 | 学习 Python | chenweiliang.com | 2016-03-06 |
| 3 | 学习 Java | chenweiliang.com | 2015-05-01 |
+-----------+---------------+---------------+-----------------+
4 rows in set (0.01 sec)

Lisez toutes les données de la table chenweiliang_tbl et triez-les par ordre croissant en fonction du champ submit_date.


Utilisation de la clause ORDER BY dans un script PHP

Vous pouvez utiliser la fonction PHP mysqli_query() et la même commande SQL SELECT avec une clause ORDER BY pour obtenir les données.

Cette fonction est utilisée pour exécuter des commandes SQL, puis afficher toutes les données interrogées via la fonction PHP mysqli_fetch_array().

Exemple

Essayez l'exemple suivant, les données interrogées sont renvoyées dans l'ordre décroissant du champ submit_date.

Test ORDRE PAR MySQL :

<?
php
$dbhost = 'localhost:3306'; // mysql服务器主机地址
$dbuser = 'root'; // mysql用户名
$dbpass = '123456'; // mysql用户名密码
$conn = mysqli_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
 die('连接失败: ' . mysqli_error($conn));
}
// 设置编码,防止中文乱码
mysqli_query($conn , "set names utf8");
 
$sql = 'SELECT chenweiliang_id, chenweiliang_title, 
 chenweiliang_author, submission_date
 FROM chenweiliang_tbl
 ORDER BY submission_date ASC';
 
mysqli_select_db( $conn, 'chenweiliang' );
$retval = mysqli_query( $conn, $sql );
if(! $retval )
{
 die('无法读取数据: ' . mysqli_error($conn));
}
echo '<h2>陈沩亮博客 MySQL ORDER BY 测试<h2>';
echo '<table border="1"><tr><td>教程 ID</td><td>标题</td><td>作者</td><td>提交日期</td></tr>';
while($row = mysqli_fetch_array($retval, MYSQL_ASSOC))
{
 echo "<tr><td> {$row['chenweiliang_id']}</td> ".
 "<td>{$row['chenweiliang_title']} </td> ".
 "<td>{$row['chenweiliang_author']} </td> ".
 "<td>{$row['submission_date']} </td> ".
 "</tr>";
}
echo '</table>';
mysqli_close($conn);
?>

J'espère que le blog de Chen Weiliang ( https://www.chenweiliang.com/ ) partagé "Tri conditionnel multi-champ MySQL ? Ordre MySQL par instruction/fonction de requête descendante et ascendante", ce qui vous est utile.

Bienvenue à partager le lien de cet article :https://www.chenweiliang.com/cwl-476.html

Bienvenue sur la chaîne Telegram du blog de Chen Weiliang pour obtenir les dernières mises à jour !

🔔 Soyez le premier à obtenir le précieux « Guide d'utilisation de l'outil d'IA de marketing de contenu ChatGPT » dans le répertoire supérieur de la chaîne ! 🌟
📚 Ce guide contient une valeur énorme, 🌟C'est une opportunité rare, ne la manquez pas ! ⏰⌛💨
Partagez et likez si vous aimez !
Vos partages et likes sont notre motivation continue !

 

发表 评论

Votre adresse email ne sera pas publiée. 项 已 用 * 标注

到 顶部