Artigo Diretório
MySQLClassificação condicional de vários campos?MySQL ordenar por instrução/função de consulta decrescente e ascendente
Classificação do MySQL
Sabemos usar a instrução SQL SELECT para ler dados da tabela MySQL.
Se precisarmos ordenar os dados lidos, podemos usar o MySQL's ORDENAR POR cláusula para definir qual campo você deseja classificar de que maneira e, em seguida, retornar os resultados da pesquisa.
gramática
A seguir está uma instrução SQL SELECT que usa a cláusula ORDER BY para classificar os dados da consulta antes de retornar os dados:
SELECT field1, field2,...fieldN table_name1, table_name2... ORDER BY field1, [field2...] [ASC [DESC]]
- Você pode usar qualquer campo como uma condição de classificação para retornar resultados de consulta classificados.
- Você pode definir vários campos para classificar.
- Você pode usar as palavras-chave ASC ou DESC para definir os resultados da consulta a serem classificados em ordem crescente ou decrescente.Por padrão, está em ordem crescente.
- Você pode adicionar cláusulas WHERE...LIKE para definir condições.
Usando a cláusula ORDER BY no prompt de comando
O seguinte usará a cláusula ORDER BY na instrução SQL SELECT para ler os dados na tabela de dados do MySQL chenweiliang_tbl:
Instância
Experimente os exemplos abaixo e os resultados serão classificados em ordem crescente e decrescente.
Classificação 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)
Leia todos os dados na tabela chenweiliang_tbl e classifique em ordem crescente pelo campo submit_date.
Usando a cláusula ORDER BY em um script PHP
Você pode usar a função PHP mysqli_query() e o mesmo comando SQL SELECT com uma cláusula ORDER BY para obter os dados.
Esta função é usada para executar comandos SQL e então gerar todos os dados consultados através da função PHP mysqli_fetch_array().
Instância
Tente o exemplo a seguir, os dados consultados são retornados em ordem decrescente do campo submit_date.
Teste do MySQL ORDER BY:
<? 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); ?>
Hope Chen Weiliang Blog ( https://www.chenweiliang.com/ ) compartilhou "Classificação condicional de vários campos do MySQL? Ordem do MySQL por instrução/função de consulta decrescente e ascendente", o que é útil para você.
Bem-vindo a compartilhar o link deste artigo:https://www.chenweiliang.com/cwl-476.html
Bem-vindo ao canal Telegram do blog de Chen Weiliang para receber as últimas atualizações!
📚 Este guia contém um valor enorme, 🌟Esta é uma oportunidade rara, não perca! ⏰⌛💨
Compartilhe e curta se gostar!
Seus compartilhamentos e curtidas são nossa motivação contínua!