SQLite基礎-7.子句(一)

SQLite子句(一)

1. WHERE子句

WHERE 子句後面跟着條件,條件爲真則條件生效,WHERE子句可以跟着SELECT、UPDATE、DELETE語句中。
WHERE子句中可以使用比較運算符、邏輯運算符指定條件。

-- 語法
SELECT * FROM table_name
    WHERE [condition];

-- 實例
select * from link_men
    where name = 'eric';
select * from link_men
    where address = '深圳市' and salary > 500;

2. LIKE子句

LIKE 子句是用來匹配通配符指定模式的文本值。
LIKE 子句與下面兩個通配符結合使用:

  • 百分號(%)
  • 下劃線(_)

百分號(%)表示零個、一個或者多個數字或字符。
下劃線(_)表示一個單一的數字或字符。

-- 語法
-- %和_ 可以單獨使用,
SELECT * FROM table_name
    WHERE column1 LIKE 'xxx%';

SELECT * FROM table_name
    WHERE column1 LIKE '_xxx';

-- 也可以組合使用
SELECT * FROM table_name
    WHERE column1 LIKE '_xxx%';

實例

語句 描述
WHERE SALARY LIKE ‘200%’ 查找以 200 開頭的任意值
WHERE SALARY LIKE ‘%200%’ 查找任意位置包含 200 的任意值
WHERE SALARY LIKE ‘_00%’ 查找第二位和第三位爲 00 的任意值
WHERE SALARY LIKE ‘2_%_%’ 查找以 2 開頭,且長度至少爲 3 個字符的任意值
WHERE SALARY LIKE ‘%2’ 查找以 2 結尾的任意值
WHERE SALARY LIKE ‘_2%3’ 查找第二位爲 2,且以 3 結尾的任意值
WHERE SALARY LIKE ‘2___3’ 查找長度爲 5 位數,且以 2 開頭以 3 結尾的任意值

3. GLOB 子句

GLOB子句用來匹配通配符指定模式的文本值。與LIKE子句不同的是,GLOB是大小寫敏感的。GLOB與下列通配符搭配使用,通配符符合UNIX的語法。

  • 星號(*)
  • 問好(?)

星號(*)代表零個、一個或者多個數字或字符。
問號(?)代表單一的數字或字符。

-- 語法
-- *和? 可以單獨使用,
SELECT * FROM table_name
    WHERE column1 LIKE 'xxx*';

SELECT * FROM table_name
    WHERE column1 LIKE '?xxx';

-- 也可以組合使用
SELECT * FROM table_name
    WHERE column1 LIKE '*?xxx?';

-- 實例
SELECT * FROM link_men
    WHERE address GLOB '深圳*';

4. Oreder By 子句

ORDER BY 子句是用來排序的,可以根據一個或多個列按照升序或降序排序。

-- 語法
SELECT * FROM table_name
    [WHERE condition]
    [ORDER BY column1, column2,...] [ASC | DESC];
-- ASC和DESC 任選一個,可以不選,不選,默認:升序
-- ASC 升序,DESC 降序;

-- 實例
SELECT * FROM link_men
    ORDER BY salary;
SELECT * FROM link_men
    ORDER BY salary DESC;

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章