快轉到主要內容

《SQL Basics-02》SELECT、LIKE

·962 字
Computer-Science SQL Database
目錄
SQL-Basic - 本文屬於一個選集。
§ : 本文

一些基礎常見的 SQL 語法。


查詢
#

要在資料表內查詢資料筆,則需要用到「SELECT」語法:

1SELECT `查詢欄位1`,`查詢欄位2...` FROM `資料表名稱` WHERE 查詢條件;

而查詢的欄位也可以填入「*」來表示查詢「全部欄位」:

1SELECT * FROM `資料表名稱 WHERE `查詢條件`;

至於條件… 各種寫法,常見的寫法為 比對資料值相符與否

範例 - 比對數字
#

利用上一篇文章「《SQL Basics-01》CREATE、INSERT」中所說的語法,陸續寫入幾筆資料後,目前的資料表內容為:

idphonenameage
10123456789新之助5
2NULLAnonymous19
3NULL向日葵0
40111222333美冴29
50444555666廣志35

輸入查詢語法:

1SELECT `id`, `name`, `age` FROM `資料表名稱` WHERE `age` > 10;

Database Server 返回以下結果:

nameage
Anonymous19
美冴29
廣志35

因為 WHERE 後方所寫的查詢條件為「age」的值須大於「10」,
因此 age 小於等於 10 的資料筆將不顯示。

大於使用「>」;小於使用「<」;
等於使用「=」;不等於使用「!=」或「<>」;
大於等於使用「>=」;小於等於使用「<=」;

ps. 若不指定查詢條件,則表示查詢全部:

1SELECT `id`, `name`, `age` FROM `資料表名稱`;

Database Server 返回以下結果:

idnameage
1新之助5
2Anonymous19
3向日葵0
4美冴29
5廣志35

範例 - 比對字串
#

輸入查詢語法:

1SELECT `id`, `name` FROM `資料表名稱` WHERE `name` = "新之助";

Database Server 返回以下結果:

idname
1新之助

不等於的字串查詢:

1SELECT `id`, `name` FROM `資料表名稱` WHERE `name` != "Anonymous";

Database Server 返回以下結果:

idname
1新之助
3向日葵
4美冴
5廣志

範例 - 模糊比對
#

當有時候我們不確定目標欄位的時,我們可以用部份特徵來比對。
要模糊查詢則是使用「LIKE」語法:

1SELECT * FROM `資料表名稱` WHERE `phone` LIKE "01%";

Database Server 返回以下結果:

idphonenameage
10123456789新之助5
40111222333美冴29

百分號「%」表示任意字元比對 0 次或 0 次以上
該語法的意思是,查詢 phone 的值為 01 開頭 的資料筆。
所以假設「蘋果%」可以配對「蘋果」、「蘋果汁」、「蘋果派不好吃」,但能配對「青蘋果」,因為「青蘋果」開頭並非是「蘋果」,若要配對它,則可以寫成「%蘋果%」。

如果輸入以下語法:

1SELECT * FROM `資料表名稱` WHERE `age` LIKE "_9";

Database Server 返回以下結果:

idphonenameage
2NULLAnonymous19
40111222333美冴29

底線「_」表示任意字元比對 1 次。
該語法表示,查詢 age 欄位「第二字為 9」的結果。
所以「_9」可以配對「39」、「59」但不能配對「22」、「9」,當然也不能配對「193」,如果要配對「193」則須寫做「_9_」或者「_9%」。

Alpaca
作者
Alpaca
No one can stop my feet.
SQL-Basic - 本文屬於一個選集。
§ : 本文

相關文章

《SQL Basics-01》CREATE、INSERT
·1421 字
Computer-Science SQL Database

一些基礎常見的 SQL 語法。

資料庫概念 DB、DBMS、SQL 之間的關係
·966 字
Computer-Science SQL Database

資料庫早已被大量使用,如果還分不清楚 Database 與 DBMS 及 SQL 的關係,那還真是場災難呢!

如何使用 Hexo 在 Github Pages 上部署部落格?
·3141 字
Computer-Science Hexo Github

想要創建部落格,但又不想要一堆複雜又用不到的功能,輕盈的靜態頁面及 Git 版本控制,使用 Markdown 來撰寫文章,用 Hexo 架設部落格並發布在 Github Pages 這一切就是那麼容易且方便。

Encode、Encrypt and Hash are different!
·5521 字
Computer-Science Cryptography Digital Signature Cyber Security

Encode (編碼)、Encrypt (加密)、Hash (雜湊) 一直令許多新手們搞混,雖然說可能運算後的結果看起來都是一串亂碼,但原理及使用場合卻天差地遠,千萬不要再分不清處了!

一招啟動 Windows 10 「終極效能」!讓你的電腦瞬間活起來!
·1087 字
Computer-Science Windows
Github 檔案太大無法推送!?安裝「Git-LFS」馬上解決!
·875 字
Computer-Science Github

使用 git push 推送檔案到 Github 上時,被告知檔案太大無法推送!?馬上教你怎麼解決!