MySQL自學第五章 排序檢索資料

2021-10-05 01:55:59 字數 1729 閱讀 5468

本章節引入「子句」(clause)的概念;

子句構成了sql語句;

1、排序資料

select prod_name from products order by prod_name;

此例中含有兩個子句,第乙個完成資料檢索,第二個實現排序

2、按照多個列進行排序

select prod_id, prod_price, prod_name from products order by prod_price, prod_name;

多列排序涉及到排序條件,此例中,先按照prod_price 1進行排序,出現相同的的prod_price 1,則對相同prod_price的prod_name 2進行排序;

假設 prod_price1 沒有重複值,則不會按照prod_name2 進行排序;

3、指定方向進行排序

日常操作excel的都知道,可以通過a-z;z-a進行指定的排序

此例中,子句3(desc)的作用即為,檢索結果按照desc進行排序,參照物件為prod_price

多列排序的注意點:

select prod_id, prod_price, prod_name from products order by prod_pricedesc, prod_name;

可以看到,prod_price 是按照子句desc進行了降序排列,但是相同prod_price的prod_name仍然是公升序排序的;

因此,注意desc的作用域為其前面的乙個字段,如果需要對每列都降序排列,則需要把desc應用到每列;

與desc相反的為asc(公升序排序);

通過實踐可以發現,在使用order by 子句預設即為asc公升序排列;

4、找出某一列的最高或者最低值

select prod_pricefrom products order by prod_price desc limit 1;

select prod_pricefrom products order by prod_pricelimit 1;

limit 子句限定只輸排序結果的一行,從而得出最高值和最低值;

MySQL必知必會 學習筆記 第五章 排序檢索資料

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

《資訊檢索導論》第五章總結

使用壓縮的目的 1 因為我們想要把盡量多的資料放入記憶體,因此壓縮能夠達到這個目的 2 從磁碟到記憶體的傳輸時間會縮短 1 無失真壓縮 壓縮後的資料能還原全部資訊 2 有失真壓縮 壓縮後會丟失一些資訊 如果有失真壓縮後丟失的資訊使用者並不關心,則有失真壓縮也是可以接受的 通過整個文件集詞條數來估計詞...

MYSQL必知必會讀書筆記 第五章 排序檢索資料

其實,檢索出的資料並不是以純隨機順序顯示的。如果不排序,資料一般將以它底層表現中出現的順序顯示。這可以是資料最初新增到表中的順序。但是,如果資料後來進行過更新或刪除,則此順序將會受到mysql重用 儲存空間的影響。因此,如果不明確控制的話,不能依賴該排序順序。在多個列上將序排列 如果想在多個列上進行...