詳解MySQL中WHERE子句的用法
我們已經看到SQL SELECT命令來從MySQL表獲取資料。我們可以使用一個條件子句WHERE子句中篩選出來的結果。使用WHERE子句,我們可以指定一個選擇的標準來從表中選擇所需的記錄。
語法:
下面是通用的SQL WHERE子句來獲取資料從MySQL表的SELECT命令的語法:
?
12 |
SELECT field1, field2,...fieldN table_name1, table_name2... [ WHERE condition1 [ AND [ OR ]] condition2.....
|
可以使用一個或多個以逗號分隔的表,包括各種使用WHERE子句條件。但是WHERE子句的SELECT命令是一個可選部分。
您可以使用WHERE子句指定任何條件。
您可以指定一個以上的條件下使用AND或者OR運算子。
一個WHERE子句中可以使用的分散DELETE或UPDATE的SQL命令指定條件。
就像程式語言中的一樣,如果條件的WHERE子句。該子句用於在MySQL的表的欄位值與給定值比較。如果從外部給定值是等於可用欄位值在MySQL表,然後返回該行。
這裡是清單的運算子可以使用WHERE子句。
假設欄位A有值為10和欄位B擁有的值為20:
WHERE子句是非常有用的,當想獲取的選擇表中的行,特別是當你使用MySQL的JOIN。JOIN在另一章中討論。
這是一個常見的做法是使用主鍵查詢記錄,使搜尋快速。
如果給定的條件不符合任何表中的記錄,那麼查詢不會返回任何行。
從命令提示符獲取資料:
這將使用SQL SELECT命令的WHERE子句,以獲取選擇的資料MySQL表tutorials_tbl
例項:
下面的例子將返回tutorials_tbl表中作者的名字是Sanjay所有記錄:
?
12345678910111213 |
root@host# mysql -u root -p password ; Enter password :******* mysql> use TUTORIALS; Database changed mysql> SELECT * from tutorials_tbl WHERE tutorial_author= 'Sanjay' ; + -------------+----------------+-----------------+-----------------+ | tutorial_id | tutorial_title | tutorial_author | submission_date | + -------------+----------------+-----------------+-----------------+ | 3 | JAVA Tutorial | Sanjay | 2007-05-21 | + -------------+----------------+-----------------+-----------------+ 1 rows in set (0.01 sec) mysql>
|
除非執行LIKE比較字串的比較是不區分大小寫的。可以搜尋區分大小寫,使用BINARY關鍵字如下。
?
123456789 |
root@host # mysql -u root -p password; Enter password:******* mysql> use TUTORIALS; Database changed mysql> SELECT * from tutorials_tbl WHERE BINARY tutorial_author= 'sanjay' ; Empty set (0.02 sec) mysql>
|
使用PHP指令碼獲取資料:
可以使用相同SQL的SELECT命令的WHERE子句中到PHP的functionmysql_query()中。這個函式是用來執行SQL命令後,另一個PHP函式mysql_fetch_array()可以用來獲取所有選定的資料。這個函式返回的行作為一個關聯陣列,數字陣列或兩者。這個函式返回FALSE,如果沒有更多的行。
例項:
下面的例子將返回tutorials_tbl表中作者的名字是Sanjay所有記錄:
?
1234567891011121314151617181920212223242526272829303132 |
|
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/4550/viewspace-2811113/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- MySQL中BETWEEN子句的用法詳解MySql
- SQLite中的WHERE子句SQLite
- MySQL最佳化WHERE子句(轉)MySql
- MyBatis中的<where>標籤和where子句的區別MyBatis
- SQL中 where 子句和having子句中的區別SQL
- MySQL怎樣最佳化WHERE子句(轉)MySql
- MySQL-WHERE子句 以及 邏輯操作符MySql
- php中mysql操作buffer用法詳解PHPMySql
- Oracle中where子句中條件的物理執行順序Oracle
- CV關於Mysql中ON與Where區別問題詳解buaMySql
- LL圖文詳解mysql中with...as用法huxMySqlUX
- mysql中limit的用法詳解[資料分頁常用]MySqlMIT
- ORACLE WITH CHECK OPTION子句詳解Oracle
- 深入Oracle的left join中on和where的區別詳解Oracle
- Java 中 this 和 super 的用法詳解Java
- Android中的ANR用法詳解Android
- STL中set用法詳解
- STL中map用法詳解
- Oracle中start with...connect by prior子句用法.docOracle
- 詳解 MySQL 中的 explainMySqlAI
- truncate和不帶where子句的delete, 以及drop區別delete
- 【實驗】where子句的解析順序及執行效率
- ORACLE SQL開發where子句之case-whenOracleSQL
- 詳解Vue中watch的高階用法Vue
- oracle中的exists 和not exists 用法詳解Oracle
- java中printf中用法詳解Java
- Java中jar命令用法詳解JavaJAR
- oracle 11g model子句的用法Oracle
- MySQL 中的事務詳解MySql
- MySQL 4.1.0 中文參考手冊 --- 6.3 用於 SELECT 和 WHERE 子句的函式 (1) (轉)MySql函式
- oracle中的exists和not exists和in用法詳解Oracle
- 【Mysql】mysql事務處理用法與例項詳解MySql
- ES6中Promise用法詳解Promise
- C++ 中 this 指標的用法詳解C++指標
- PHP中return用法詳細解讀PHP
- Android中Context用法詳解AndroidContext
- insert 中append 用法詳解APP
- 達夢資料庫DM8中WITH子句的簡單用法資料庫