MySql學習筆記 一 關鍵字的使用

2022-05-17 09:39:11 字數 3317 閱讀 9995

1.distinct關鍵字

作用:檢索出有不同值的列,比如乙個商品表中存在**商vend_id,乙個**商會對應很多商品,我們要查詢有多少**商,就可以用到該關鍵字去重。

select distinct vend_id from products;

2.limit關鍵字

作用:返回表中指定行範圍的資料

select prod_name from products limit 5; --

返回不多於5行的資料

select prod_name from products limit 5,5; --

返回從5行開始的5行。

關鍵字limit在分頁中應用較多,假設乙個業務場景,每頁顯示10條資料,根據當前頁數顯示該頁資料,pc表示當前頁,則表中起始行 ts = pc*10-10+1

第一種方式:

select

*from t_book limit ts,10

這樣當資料量很大時候,後面頁的資料需要跨越很多資料,我們可以採取第二中方式進行優化

第二種方式:

select

*from t_book where book_id>(select t_id from t_book order

by limit ts,1) limit 10

3.order by關鍵字

作用:對所查詢的列進行降序排列

select prod_name from products order

by prod_name;

也可以對多列進行排序

select

*from products order

by prod_price,prod_name; --

這樣只有當prod_price有相同的值時候,才會按prod_name排序

也可以在字段後加上desc關鍵字進行指定降序排序

select prod_name from products order

by prod_name desc;

order by 和 limit 組合可以查詢最大值

select prod_price from products order

by prod_price desc limit 1;

order by 和 where 語句連著使用時要放在where後面。

4.and 和 or 結合使用

應用場景:返回商品**大於10元,且由1002或1003生產的產品

select

*from products where (vend_id=

1002

or vend_id=

1003) and prod_price>=

10;

5.in 和 not in

用 in 可以代替 or

應用場景:假設1002和1003生產的商品

select

*from products where vend_id =

1002

or vend_id =

1003; --

or方法

select

*from products where vend_id in (1002,1003); --

in方法

select

*from products where vend_id not

in (1002,1003); --

not in方法查詢不是1002 和 1003 生產的商品

6. like 關鍵字

作用:進行一些模糊匹配,通常和一些萬用字元進行搭配查詢

select

*from products where prod_name like

'jet%'--

匹配以jet開頭的字元

select

*from products where prod_name like

'%dcb%'--

匹配任何位置包含dcb字元商品資訊

select

*from products where prod_name like

'_jet'--

_匹配乙個字元

select

*from products where prod_name like

'[jdk]%

'; --

匹配以 j , d , k ,開頭的商品

select

*from products where prod_name like

'[!jdk]%

'; --

匹配不以 j , d , k ,開頭的商品

7.update 關鍵字

作用:根據一些條件更新資料庫中的值

update products set prod_price =

100where prod_name = jet; --

修改商品名稱為jet商品**

如果不加判斷會修改所有商品**

8.union 關鍵字

union 操作符用於合併兩個或多個 select 語句的結果集。

請注意,union 內部的每個 select 語句必須擁有相同數量的列。列也必須擁有相似的資料型別。同時,每個 select 語句中的列的順序必須相同。

select city from

customers

union

select city from

suppliers

order

by city;

union 不能用於列出兩個表中所有的城市。如果一些客戶和**商來自同乙個城市,每個城市只會列出一次。union 只會選取不同的值。請使用 union all 來選取重複的值!

select city from

customers

union

allselect city from

suppliers

order

by city;

Kotlin 基礎一 關鍵字

kotlin語言中文站 android 字段說明 abstract 抽象宣告,被標註物件預設是open annotation 宣告乙個註解類 by委託 class 宣告乙個類 companion 宣告乙個伴生物件 const 將屬性標記為編譯期常量 constructor 宣告乙個主建構函式或次建構...

Python學習筆記(一) 關鍵字和內建函式

python學習筆記 一 python關鍵字 內建函式以及運算子優先順序 目錄 python關鍵字 python內建函式 運算子的優先順序 true ifis class global false elif indef nonlocal andelse return import delor whi...

Mysql之EXPLAIN關鍵字學習筆記

explain是什麼?使用explain關鍵字可以模擬優化器執行sql查詢語句,從而知道mysql是如何處理你的sql語句的。分析你的查詢與或是表結構的效能瓶頸。explain的如何使用?explain的用法比較簡單,只要要查詢語句前面加上explain即可 1explain select from...