MySQL multi-field asihan kondisional? MySQL urutan ku turun naek pernyataan query / fungsi

Ngurutkeun multi-widang MySQL ? Pernyataan/fungsi pamundut MySQL ORDER BY urutan turun/naék

MySQL diurutkeun

Urang terang ngagunakeun pernyataan SQL SELECT pikeun maca data tina tabel MySQL.

Upami urang kedah ngurutkeun data anu parantos dibaca, urang tiasa nganggo klausa ORDER BY MySQL pikeun nangtukeun kolom sareng metode pangurutan mana anu badé dianggo, teras mulangkeun hasil pamilarian.

tata basa

Ieu mangrupikeun pernyataan SQL SELECT anu ngagunakeun klausa ORDER BY pikeun nyortir data pamundut sateuacan ngabalikeun data:

SELECT field1, field2,...fieldN table_name1, table_name2...
ORDER BY field1, [field2...] [ASC [DESC]]
  • Anjeun tiasa nganggo widang naon waé salaku kaayaan asihan pikeun mulangkeun hasil pamundut anu diurutkeun.
  • Anjeun tiasa nyetél sababaraha widang pikeun nyortir.
  • Anjeun tiasa nganggo kecap konci ASC atanapi DESC pikeun nyetél hasil query pikeun diurutkeun dina urutan naek atanapi turun.Sacara standar, éta dina urutan naek.
  • Anjeun tiasa nambihan WHERE...LIKE klausa pikeun nyetél kaayaan.

Ngagunakeun klausa ORDER BY dina ajakan paréntah

Di handap ieu bakal nganggo klausa ORDER BY dina pernyataan SQL SELECT pikeun maca data dina tabel data MySQL chenweiliang_tbl:

Contona

Coba conto di handap sarta hasilna bakal diurutkeun dina urutan naek jeung nurun.

SQL diurutkeun

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)

Baca sakabéh data dina tabel chenweiliang_tbl tur diurutkeun dina urutan naek ku widang submission_date.


Ngagunakeun klausa ORDER BY dina skrip PHP

Anjeun tiasa nganggo fungsi PHP mysqli_query () sareng paréntah SQL SELECT sami sareng klausa ORDER BY pikeun meunangkeun data.

Pungsi ieu dipaké pikeun ngaéksekusi paréntah SQL lajeng kaluaran sakabéh data queried ngaliwatan fungsi PHP mysqli_fetch_array ().

Contona

Coba conto di handap ieu, data queried dipulangkeun dina urutan nurun tina submission_date widang.

MySQL ORDER BY test:

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

koméntar

您的邮箱地址不会被公开。必填项已用*标注

Ngagulung ka luhur