mysql之排序檢索資料

2021-10-02 11:17:14 字數 1161 閱讀 9019

其實,檢索出的資料並不是以純粹的隨機順序顯示的。如果不排序,資料一般將以它在底層表**現的順序顯示。這可以是資料最初新增到表中的順序。但是,如果資料後來進行過更新或刪除,則此順序將會受到mysql重用**儲存空間的影響。因此,如果不明確控制的話,不能(也不應該)依賴該排序順序。關聯式資料庫設計理論認為,如果不明確規定排序順序,則不應該假定檢索出的資料的順序有意義。

例:select vent_id,h_title from house_info order by vent_id;

±--------±-----------------------+

| vent_id | h_title |

±--------±-----------------------+

| 1 | 莫干山三秋美宿 |

| 2 | 老故事客棧·麗江戀空閣 |

| 2 | 蘇州溪水居 |

| 3 | 台東知本 |

±--------±-----------------------+

經常需要按不止乙個列進行資料排序。例如,如果要顯示雇員清單,可能希望按姓和名排序(首先按姓排序,然後在每個姓中再按名排序)。如果多個雇員具有相同的姓,這樣做很有用。

例如:select * from people order by first_name,last_name;

關鍵字order by預設是按照公升序排序,還可以使用 order by 子句以降序(從 z 到 a )順序排序。為了進行降序排序,必須指定desc關鍵字。

例如:select * from house_info order by h_id desc;

例如:select * from house_info order by h_id desc, vent_id;

desc 關鍵字只應用到直接位於其前面的列名。在上例中,只對h_id 列指定 desc ,對 vent_id 列不指定。因此,h_id 列以降序排序,而 vent_id 列仍然按標準的公升序排序。

例如:select * from house_info order by h_id desc limit 1;

MySQL之排序檢索資料

1 排序資料 select prod name from products order by product name 表示按字母順序公升序排列,輸出prod name。2 按多個列排序 select prod id,prod price,prod name from products order ...

mysql 資料排序檢索

關聯式資料庫設計理論認為,如果沒有明確規定排序順序,則不應該假定檢索出的資料的順序有意義。可以使用order by對輸出進行排序。select prod name from products order by prod name 使用非選擇列排序通常使用被選擇的列進行排序,但也可以使用其他列作為排序...

MySQL 排序檢索資料

本文將講授如何使用select語句的order by子句,根據需要排序檢索出的資料。下面的sql語句返回某個資料庫表的單個列。但請看其輸出,並沒有特定的順序。其實,檢索出的資料並不是以純粹的隨機順序顯示的。如果不排序,資料一般將以它在底層表 現的順序顯示。這可以是資料最初新增到表中的順序。但是,如果...