ɢʜʘ*_*ɔʘɴ 5 mysql sql database sorting
我的数据库中有一张表。
+--------+-------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+--------+-------------+------+-----+---------+----------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| rollno | int(11) | NO | | NULL | |
| name | varchar(20) | NO | | NULL | |
| marks | int(11) | NO | | NULL | |
+--------+-------------+------+-----+---------+----------------+
Run Code Online (Sandbox Code Playgroud)
默认情况下,如果我查询
select * from students;
Run Code Online (Sandbox Code Playgroud)
显示按 排序的结果id INT (auto-increment)
。
+----+--------+------------+-------+
| id | rollno | name | marks |
+----+--------+------------+-------+
| 1 | 65 | John Doe | 89 |
| 2 | 62 | John Skeet | 76 |
| 3 | 33 | Mike Ross | 78 |
+----+--------+------------+-------+
3 rows in set (0.00 sec)
Run Code Online (Sandbox Code Playgroud)
我想更改默认排序行为并rollno
设置默认排序字段,我该怎么做?
DB 以尽可能最快的方式返回数据。如果这恰好是它的存储顺序或定义了密钥,那么这取决于系统。你不能依赖这一点。
想想看:如果您不需要订购某些东西,为什么数据库会默认使用性能来订购某些东西。DB 针对速度进行了优化。
如果您希望对其进行排序,则必须在子句中指定order by
。