MySQL之senior(一)——單行處理函式
阿新 • • 發佈:2021-10-20
MySQL之senior
基礎語法
select distinct 語句:去重 ;SELECT Company FROM Orders
where關鍵字配合一些運算子使用(between 、like...)
order by 升序降序:
SELECT Company, OrderNumber FROM Orders ORDER BY Company DESC, OrderNumber ASC
insert into 可以插入全部值,也可以插入部分值
insert into person (firstname,lastname) values('jack','june');
update 更新(修改)一列或者多列值
update person set firstname='paul',lastname='pick' where lastname='june';
delete 刪除表中的部分行/所有行:
delete from person where firstname='paul';
delete from person;(*號可省略)
SQL 使用單引號來環繞文字值(雙引號也可,不建議用)。如果是數值,不要使用引號
條件查詢
- between and是閉區間,包括兩端的值。
- 在資料庫當中null不能使用等號進行衡量。需要使用is null
因為資料庫中的null代表什麼也沒有,它不是一個值,所以不能使用等號衡量。 - and優先順序比or高。
- in 包含,相當於多個 or (not in 不在這個範圍中)in不是一個區間。in後面跟的是具體的值
- like 模糊查詢,支援%或下劃線匹配 %匹配任意多個字元 下劃線:任意一個字元。
%是一個特殊的符號,_ 也是一個特殊符號 ( 需要作為正常字元使用需要使用 \ 轉義 ) - 根據欄位的位置也可以排序(不建議)
- select後面可以跟某個表的欄位名(可以等同看做變數名),也可以跟字面量/字面值(資料)
資料處理函式
- 單行處理函式:一個輸入對應一個輸出。
lower(ename),upper(name),
substr(ename, index, length) 起始下標從1開始,沒有0.
concat(empno,ename), length(ename)
trim(name) 去空格
round(num,para) 四捨五入 (para可以為負數)
rand() 生成隨機數(0-1)
ifnull (欄位名, 被當做哪個值) 可以將 null 轉換成一個具體值
ifnull是空處理函式。專門處理空的。
在所有資料庫當中,只要有NULL參與的數學運算,最終結果就是NULL。