Rakstu katalogs
MySQLVairāku lauku nosacītā šķirošana?MySQL sakārtot pēc dilstošā un augošā vaicājuma priekšraksta/funkcijas
MySQL kārtošana
Mēs zinām, ka ir jāizmanto SQL SELECT priekšraksts, lai nolasītu datus no MySQL tabulas.
Ja mums ir jākārto lasītie dati, mēs varam izmantot MySQL SAKĀRTOT PĒC klauzulu, lai iestatītu, pēc kura lauka vēlaties kārtot, un pēc tam atgriezt meklēšanas rezultātus.
gramatika
Šis ir SQL SELECT priekšraksts, kas izmanto klauzulu ORDER BY, lai kārtotu vaicājuma datus pirms datu atgriešanas:
SELECT field1, field2,...fieldN table_name1, table_name2... ORDER BY field1, [field2...] [ASC [DESC]]
- Varat izmantot jebkuru lauku kā kārtošanas nosacījumu, lai atgrieztu sakārtotus vaicājuma rezultātus.
- Varat iestatīt vairākus kārtošanas laukus.
- Varat izmantot ASC vai DESC atslēgvārdus, lai iestatītu vaicājuma rezultātu kārtošanu augošā vai dilstošā secībā.Pēc noklusējuma tas ir augošā secībā.
- Lai iestatītu nosacījumus, varat pievienot WHERE...LIKE klauzulas.
Izmantojot klauzulu ORDER BY komandu uzvednē
Lai nolasītu datus MySQL datu tabulā chenweiliang_tbl, SQL SELECT priekšrakstā tiks izmantota klauzula ORDER BY:
Piemērs
Izmēģiniet tālāk sniegtos piemērus, un rezultāti tiks sakārtoti augošā un dilstošā secībā.
SQL kārtošana
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)
Izlasiet visus datus tabulā chenweiliang_tbl un kārtojiet augošā secībā pēc iesniegšanas_datuma lauka.
Klauzulas ORDER BY izmantošana PHP skriptā
Lai iegūtu datus, varat izmantot PHP funkciju mysqli_query() un to pašu SQL SELECT komandu ar ORDER BY klauzulu.
Šo funkciju izmanto, lai izpildītu SQL komandas un pēc tam izvadītu visus vaicātos datus, izmantojot PHP funkciju mysqli_fetch_array().
Piemērs
Izmēģiniet šo piemēru, vaicātie dati tiek atgriezti dilstošā secībā laukā submission_date.
MySQL ORDER BY tests:
<?
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 emuārs ( https://www.chenweiliang.com/ ).
Laipni lūdzam kopīgot šī raksta saiti:https://www.chenweiliang.com/cwl-476.html
Lai atklātu vairāk slēptu triku🔑, pievienojieties mūsu Telegram kanālam!
Dalies un patīk, ja patīk! Jūsu akcijas un atzīmes Patīk ir mūsu pastāvīga motivācija!