Условная сортировка MySQL по нескольким полям?Порядок MySQL по убыванию оператора/функции запроса по возрастанию

MySQLУсловная сортировка по нескольким полям?MySQL порядок по убыванию оператора/функции запроса по возрастанию

Сортировка MySQL

Мы знаем, как использовать оператор SQL SELECT для чтения данных из таблицы MySQL.

Если нам нужно отсортировать прочитанные данные, мы можем использовать MySQL СОРТИРОВАТЬ ПО предложение, чтобы установить, какое поле вы хотите отсортировать, а затем вернуть результаты поиска.

грамматика

Ниже приведена инструкция SQL SELECT, в которой используется предложение ORDER BY для сортировки данных запроса перед возвратом данных:

SELECT field1, field2,...fieldN table_name1, table_name2...
ORDER BY field1, [field2...] [ASC [DESC]]
  • Вы можете использовать любое поле в качестве условия сортировки для возврата отсортированных результатов запроса.
  • Вы можете установить несколько полей для сортировки.
  • Вы можете использовать ключевые слова ASC или DESC, чтобы задать сортировку результатов запроса в порядке возрастания или убывания.По умолчанию он находится в порядке возрастания.
  • Вы можете добавить предложения WHERE...LIKE для установки условий.

Использование предложения ORDER BY в командной строке

Следующее будет использовать предложение ORDER BY в операторе SQL SELECT для чтения данных в таблице данных MySQL chenweiliang_tbl:

Пример

Попробуйте приведенные ниже примеры, и результаты будут отсортированы в порядке возрастания и убывания.

Сортировка 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)

Прочитайте все данные в таблице chenweiliang_tbl и отсортируйте в порядке возрастания по полю submit_date.


Использование предложения ORDER BY в PHP-скрипте

Вы можете использовать функцию PHP mysqli_query() и ту же команду SQL SELECT с предложением ORDER BY для получения данных.

Эта функция используется для выполнения команд SQL и последующего вывода всех запрошенных данных через функцию PHP mysqli_fetch_array().

Пример

Попробуйте следующий пример: запрошенные данные возвращаются в порядке убывания значения поля submit_date.

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);
?>

Блог Хоуп Чен Вейлян ( https://www.chenweiliang.com/ ) поделился «Условная сортировка по нескольким полям MySQL? Порядок MySQL по убыванию и возрастанию оператора/функции запроса», который будет полезен для вас.

Добро пожаловать, чтобы поделиться ссылкой на эту статью:https://www.chenweiliang.com/cwl-476.html

Чтобы раскрыть еще больше скрытых трюков🔑, присоединяйтесь к нашему каналу в Telegram!

Поделитесь и поставьте лайк, если вам понравилось! Ваши репосты и лайки — наша постоянная мотивация!

 

发表 评论

Ваш адрес электронной почты не будет опубликован. 必填 项 已 用 * 标注

Наверх