1. 程式人生 > >MySQL--操作簡記(select檢索、order by排序資料)

MySQL--操作簡記(select檢索、order by排序資料)

檢索資料

SELECT

【1】檢索單個列

SELECT number
FROM accouts;

從表accounts中檢索一個名為number的列
這裡寫圖片描述

【2】檢索多個列

SELECT number, phone
FROM accouts;

select後跟多個列名即可,列名之間以逗號分隔,最後一個列名後沒有逗號

【3】檢索所有列

使用(*)萬用字元

SELECT *
FROM accounts;

這裡寫圖片描述

【4】檢索不同的行

  • DISTINCT
SELECT DISTINCT address
FROM accounts;

只返回address不同的列
這裡寫圖片描述

DISTINCT應用於所有列,而不僅是前置它的列

【5】限制結果

  • LIMIT
SELECT address
FROM accounts
LIMIT 5

LIMIT 5指示返回不多於5行
這裡寫圖片描述

SELECT address
FROM accounts
LIMIT 55

LIMIT 5,5 表示返回從第5行開始的5行

LIMIT 檢索出來的第一行為行0而不是行1.因此LIMIT 1 ,1 檢索出來的是第二行而不是第一行

【6】完全限定的表名

上面所舉的例子都是用的列名,而完全限定名就是同時使用表名和列名

SELECT accounts.address
FROM
book_borrow_sys.accounts LIMIT 5

這裡列名錶名都用了完全限定

排序資料

  • ORDER BY

【1】單個列排序

SELECT address
FROM accounts;
SELECT address
FROM accounts
ORDER BY address;

這兩段程式碼輸出的內容相同,只是第二段程式碼的輸出結果按字母順序排序
這裡寫圖片描述

這裡寫圖片描述

【2】多個列排序

SELECT address,sex
FROM accounts
ORDER BY address, sex;

多個列排序時,ORDER BY後跟多個列即可;排序順序按照跟隨的順序,僅在多個行具有相同的address時,才按sex進行排序。

【3】指定排序方向

  • DESC

OERDER BY預設按照升序排列(A到Z),加上關鍵字DESC進行降序排列

SELECT address
FROM accounts
ORDER BY address DESC

這裡寫圖片描述

DESC只對直接位於其前面的列名起作用,如果想對多個列進行降序排列,必須對每個列指定DESC關鍵字。