where子句
在我們使用資料庫時,通常只會根據特定條件提取表資料的子集。只檢索所需資料需要指定搜尋條件(search criteria),搜尋條件也稱為過濾條件(filtercondition)。
select name, age from tab1 where age=18;
返回age=18的行
where子句支援的操作符
= 等於
<> 不等於
!= 不等於
< 小於
<= 小於等於
大於= 大於等於
between 在指定的兩個值之間
eg:select name,age from tab1 where age>10; //獲取age大於10的資料
select name,age from tab1 where age between 10 and 18; //獲取age在10到18之間的資料,包括10和18
另乙個特殊子句
is null用來返回為空的資料
select name, age from where name is null;
組合where子句
使用and或者or子句,組合where子句
select name,age from tab1 where age=10 and name='aaa'; //查詢age=10並且name='aaa'的資料
select name,age from tab1 where age=10 or age=19; //查詢age=10或者age=19的資料
and和or可以同時使用,不過and的優先順序高於or,所以會先處理and操作符,另外可以用括號分組,明確的顯示優先順序.
in操作符
指定條件範圍,範圍中的每個條件都可以進行匹配。in取合法值的由逗號分隔的清單,全都括在圓括號中。
select name,age from tab1 where age in (18,19,20); //查詢age在18,19或20的所有資料,功能與or相似.
in相比or的好處:
在使用長的合法選項清單時,in操作符的語法更清楚且更直觀。
在使用in時,計算的次序更容易管理
in操作符一般比or操作符清單執行更快
in的可以包含其他select語句,使得能夠更動態地建立where子句
not操作符
否定它之後所跟的任何條件。
select name,age from tab1 where age not in (18,19,20); //查詢age不在18,19或20的所有資料,功能與or相似.
使用萬用字元過濾
like操作符
%萬用字元
%可以匹配表示任何字元出現任意次數
select name from tab1 where name link 'a%'; //可以匹配任何name以a開頭的資料
_萬用字元
下劃線(_)。下劃線只匹配單個字元,用法同%
注意不要過度使用萬用字元。如果其他操作符能達到相同的目的,應該使用其他操作符。
盡量不要把它們用在搜尋模式的開始處,因為速度會很慢
mysql的恢復 MYSQL的恢復
恢復就簡單多了!只要執行該備份檔案就行了,該備份檔案是sql哦!恢復完全備份mysql uroot p backup.sql 就這麼簡單!恢復增量備份mysqlbinlog mysql bin.000002 mysql u root p 注意此次恢復過程亦會寫入日誌檔案,如果資料量很大,建議先關閉日...
mysql的查詢日誌 mysql
這篇文章總結了mysql中查詢日誌的知識點。mysql中,日誌可以按照功能分為如下幾類。錯誤日誌 查詢日誌 慢查詢日誌 二進位制日誌 中繼日誌 innodb儲存引擎級別的事務日誌 查詢日誌 查詢日誌在mysql中被稱之為general log 通用日誌 不要被 查詢日誌 的名字誤導,錯誤的以為查詢日...
mysql的定義 MySQL定義
什麼是sql sql是結構化查詢語言。什麼是資料庫 資料庫是用來儲存資料的。關聯式資料庫 多張表之間的關係。關聯式資料庫包含表 表名 列 主鍵,通過相應的關係列來產生連線關係。資料庫與資料倉儲 資料庫是用來做交易 transaction 資料倉儲是用來做分析 analytics 資料倉儲的作用在於 ...