關鍵詞:
DESC
LIMIT
上面的limit只有一個引數值,將表中的前三條資料查詢出來
上面的SQL語句,limit有兩個引數,第一個參數列示從第幾行資料開始查,第二個參數列示查幾條資料,“limit 3,2”表示從第四行資料開始,取兩條資料。
(NOT)LIKE
like ''%X%'和'X%'以及'%X'的區別
'abc%'找以abc開始的;
'%abc' 找以abc結尾的;
'%abc%'找字串裡含有abc的;
結果肯定不同!
LEFT / RIGHT / INNER JOIN
JOIN預設為inner JOIN
左(外)連線以左表為主
右(外)連線以右表為主
EXISTS
舉個例子:
Oracle自帶的EMP、DEPT表查詢,部門編號小於30的所有員工資訊
Oracle語句:
select * from emp where deptno in (select deptno from dept where deptno <30);
select * from emp e where exists (
select * from dept d where deptno <30 and d.deptno = e.deptno ;
);
- 首先執行外查詢 select * from emp e,然後取出第一行資料,將資料中的部門編號傳給內查詢
- 內查詢執行select * from dept d where deptno <30 and d.deptno = e.deptno ;看是否查詢到結果,查詢到,則返回true,否則返回false;比如傳來的是30,則不滿足deptno <30 and d.deptno = 30,返回false
- 內查詢返回true,則該行資料保留,作為結果顯示;反之,返回false,則不作結果顯示
- 逐行查詢,看內查詢是否查到資料,是否保留作結果顯示
DELIMMITER
其實就是告訴mysql直譯器,該段命令是否已經結束了,mysql是否可以執行了。預設情況下,delimiter是分號;。在命令列客戶端中,如果有一行命令以分號結束,那麼回車後,mysql將會執行該命令。但有時候,不希望MySQL這麼做。在為可能輸入較多的語句,且語句中包含有分號。
這種情況下,就需要 事先把delimiter換成其它符號,如//或$$。
PROCEDURE
儲存過程;程式
INSERT INTO
插入記錄語句
INSERT INTO 表名稱 VALUES (值1, 值2,....)
INSERT INTO table_name (列1, 列2,...) VALUES (值1, 值2,....)
INSERT INTO Persons (LastName, Address) VALUES ('Wilson', 'Champs-Elysees')
CURSOR
遊標用declare 語句建立。DECLARE 命名遊標,並定義相應地select 語句,根據需要帶where 和其他子句。
下面在儲存過程中使用declare 定義一個遊標,儲存過程完成後遊標也相應消失。
開啟和關閉遊標
在處理open 語句時執行查詢,儲存檢索出地資料以供瀏覽和滾動遊標處理後,要關閉遊標
close會釋放遊標使用的所有內部記憶體和資源,所有遊標使用後都要進行關閉操作
在一個遊標關閉後,如果沒有重新開啟,則不能使用它。但是使用宣告過的遊標不需要再次宣告,使用open 語句開啟就行。
如果不明確的關閉遊標,mysql 將會在到達end 語句的時候自動關閉它。
相關連線?
MySQL ------ 遊標(CURSOR)(二十六) - 知乎 (zhihu.com)
FETCH
使用遊標資料的關鍵詞
在一個遊標被開啟後,可以使用 fetch 語句分別訪問它的每一行。
fetch 指定檢索什麼資料(所需的列),檢索出來的資料儲存在什麼地方。還向前移動遊標中的內部指標,使下一條fetch語句檢索下一行(避免重複讀取一行)。
TRIGGER
觸發器的建立
表名:表示觸發器監控的物件。
BEFORE|AFTER:表示觸發的時間。BEFORE 表示在事件之前觸發;AFTER 表示在事件之後觸發。
INSERT|UPDATE|DELETE:表示觸發的事件。
INSERT 表示插入記錄時觸發;
UPDATE 表示更新記錄時觸發;
DELETE 表示刪除記錄時觸發。
觸發器執行的語句塊:可以是單條SQL語句,也可以是由BEGIN…END結構組成的複合語句塊。
相關連線?
(20條訊息) MySQL—— 17 觸發器_有什麼奇怪!的部落格-CSDN部落格
WHERE 1=2
表示條件為否
練習題:
1.排序與分頁
2.多表查詢
3.檢視
4.儲存過程
5.儲存函式
6.流程控制
7.遊標的使用
8.觸發器
參考答案:
1.
2.
3.
4.
5.
6.
7.
8.