iT邦幫忙

2025 iThome 鐵人賽

DAY 5
0

當搜索範圍太大時,就需要使用WHERE來縮小範圍,有時想要將搜索資料進行排序時,就會使用ORDER BY來排序
WHERE的格式如下
SELECT *|{[DISTINIC] | 表達式 [別名],...}
FROM 資料表
[WHERE 條件];
並且使用WHERE時有一些條件

  • 必須寫在SELECT後面
  • 有時會使用AND(及)跟OR(或)等運算符連結
  • 條件式的運算結果為TRUE、FALSE跟UNKNOW,當搜索條件運算結果為TRUE時,資料就會被檢索

LIKE比較運算符
當查詢字串時,沒辦法總是知道精確值,此時就可以在WHERE子句加上「LIKE比較運算符」來找尋包含字串或是數字的字串,LIKE運算符使用字符樣式匹配方式搜尋字串,可以使用下面想的萬用字符搜尋

  1. 「%」: 代表任何序列的零個或是多個字符
  2. 「_」: 代表一個字符
  • 在LIKE比較運算中,如果想要將%或是_這兩個萬用字符當成一般字符搜尋時,則需要在前面加上跳脫字符ESCAPE

連字符&
當想要與互動有互動性時,可以在變數前面加上連字符,當搜索時就會再加上連字符的變數跳出視窗

排序
當想要排序搜索出來的資料時可以使用ORDER BY子句
SELECT *|{[DISTINIC] | 表達式 [別名],...}
FROM 資料表
[WHERE 條件];
[ORDER BY{欄位, 表達式, 別名, 欄位位置數字}[ASC|DESC]];

  • 排序位置可以是代表SELECT語句中欄位位置之數字
  • ASC為升冪 DEC為降冪
  • 只能將升冪跟降冪派給鄰近的欄位
  • ORDER BY 要寫在最後面
    可以使用FETCH來限制查詢輸出的列數

上一篇
Day 4 SQL
系列文
跟著生成式AI一起從零開始學習資料庫,5
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言