我們已經看到SQL SELECT命令來從MySQL表獲取數據。我們可以使用一個條件子句WHERE子句中篩選出來的結果。使用WHERE子句,我們可以指定一個選擇的標準來從表中選擇所需的記錄。
語法:
下面是通用的SQL WHERE子句來獲取數據從MySQL表的SELECT命令的語法:
| SELECT field1, field2,...fieldN table_name1, table_name2...[WHERE condition1 [AND [OR]] condition2..... |
就像編程語言中的一樣,如果條件的WHERE子句。該子句用于在MySQL的表的字段值與給定值比較。如果從外部給定值是等于可用字段值在MySQL表,然后返回該行。
這里是清單的運算符可以使用WHERE子句。
假設字段A有值為10和字段B擁有的值為20:

WHERE子句是非常有用的,當想獲取的選擇表中的行,特別是當你使用MySQL的JOIN。JOIN在另一章中討論。
這是一個常見的做法是使用主鍵查找記錄,使搜索快速。
如果給定的條件不符合任何表中的記錄,那么查詢不會返回任何行。
從命令提示符獲取數據:
這將使用SQL SELECT命令的WHERE子句,以獲取選擇的數據MySQL表tutorials_tbl
實例:
下面的例子將返回tutorials_tbl表中作者的名字是Sanjay所有記錄:
| root@host# mysql -u root -p password;Enter password:*******mysql> use TUTORIALS;Database changedmysql> 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關鍵字如下。
| root@host# mysql -u root -p password;Enter password:*******mysql> use TUTORIALS;Database changedmysql> 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,如果沒有更多的行。
新聞熱點
疑難解答