MySQL Where 條件


WHERE 條件

有時候操作數據庫時,只操作一些有條件限制的數據,這時可以在SQL語句中添加WHERE子句來規定數據操作的條件。

語法:

SELECT column,… FROM tb_name WHERE definition

WHERE 關鍵字后面接有效的表達式(definition),該表達式表示被操作的數據記錄必須滿足的條件。

SELECT 外,WHERE 條件關鍵字可以用於任何 SQL 語法允許的場合,如 UPDATE(更新)、DELETE(刪除)等。

例子:

SELECT * FROM user WHERE username = 'Jack'

該例子指定查詢條件為 username 等於 Jack 的數據。

WHERE 表達式中運算符說明:

參數說明:

運算符 說明
= 等於
!= 不等於,某些數據庫系統也寫作 <>
> 大於
< 小於
>= 大於或等於
<= 小於或等於
BETWEEN … AND … 介於某個范圍之內,例:WHERE age BETWEEN 20 AND 30
NOT BETWEEN …AND … 不在某個范圍之內
IN(項1,項2,…) 在指定項內,例:WHERE city IN('beijing','shanghai')
NOT IN(項1,項2,…) 不在指定項內
LIKE 搜索匹配,常與模式匹配符配合使用
NOT LIKE LIKE的反義
IS NULL 空值判斷符
IS NOT NULL 非空判斷符
NOT、AND、OR 邏輯運算符,分別表示否、並且、或,用於多個邏輯連接。
優先級:NOT > AND > OR
% 模式匹配符,表示任意字串,例:WHERE username LIKE '%user'

一些 WHERE 例子

根據用戶名查詢指定用戶:

SELECT * FROM user WHERE username = 'Jack'

查詢2009年1月1日凌晨0點以后注冊的用戶名稱及 id 號:

$regdate = mktime(00, 00, 01, 01, 01, 2009);
SELECT uid,username FROM user WHERE regdate >= $regdate

搜索用戶名中含有 user 字樣的所有用戶:

SELECT * FROM user WHERE username LIKE '%user%'

搜索用戶名中含有 user 或者 admin 的所有用戶:

SELECT * FROM user WHERE username LIKE '%user%' OR username LIKE '%admin%'


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM