1. 程式人生 > >MySQL Where 條件語句介紹和運算子小結

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%'

相關推薦

MySQL Where 條件語句介紹運算子小結

WHERE 條件 有時候操作資料庫時,只操作一些有條件限制的資料,這時可以在SQL語句中新增WHERE子句來規定資料操作的條件。 語法: 複製程式碼程式碼如下: SELECT column,… FROM tb_name WHERE definition W

mysql where 條件語句中的ORAND的用法注意!

在mysql中,在進行資料庫的增刪改查時,經常會遇到這樣的情況,在寫條件語句where時,可能會同時有多個條件的“或”或者“與”,但用法不當經常會達不到效果,經過嘗試,本人發現一個where語句中同時出現條件的“與”或者“或的時候”,要將多個OR用小括號括起來再和AND進行

shell指令碼中的if條件語句介紹使用案例

#前言:在生產工作中if條件語句是最常使用的,如使用來判斷服務狀態,監控伺服器的CPU,記憶體,磁碟等操作,所以我們需要熟悉和掌握if條件語句。  簡介 if條件語句,簡單來說就是:如果,那麼。有if單分支結構,雙分支結構,多分支結構   1.單分支結構 #語法結構: if <

shell指令碼中的case條件語句介紹使用案例

#前言:這篇我們接著寫shell的另外一個條件語句case,上篇講解了if條件語句。case條件語句我們常用於實現系統服務啟動指令碼等場景,case條件語句也相當於if條件語句多分支結構,多個選擇,case看起來更規範和易讀   #case條件語句的語法格式 case "變數" in 值1

mysql group by內排序的實現以及havingwhere 條件語句查詢的區別

例如有一個 版本號的登陸日誌表,loginlog( id, LoginName, Resource, IP, LoginTime, loginversion) , id 為 自動增長欄位,loginname為登陸使用者名稱,   logintime 為最近一次登陸時間,lo

MySQL不帶where條件的UPDATEDELETE 限制操作說明

據安全是業務的基石,但是DBA 總會遇到救火情況,業務誤刪除全表或者誤更新錯全表業務資料,導致服務不可用。sql_safe_updates引數可以限制不帶where條件的update/delete語句執行失敗,這個引數設定後,可以防止業務bug/漏洞導致把整個表都更新或者刪除

mysql where條件:某時間欄位為今天的sql語句

1.查詢:註冊時間為今天的所有使用者數:select count(*) from customer where TO_DAYS(createtime) = TO_DAYS(NOW())2.獲取當前時間到凌晨24點還有多長時間:(Java中可用於判斷某時間是否為今天)final

腳本語句介紹練習題一

語句 for 循環 一、if、case語句篇 PS:腳本現在是本人的弱項,此篇主要寫一下做過的一點腳本題,都是一些基礎難度不是很大的題,現在寫出來也算是回顧一下吧,以後有更實用更專業的腳本可能會繼續更新。    1.條件選擇if語句  選擇執行: 註意:if

mysql中的prepare介紹應用

連接 示例 context 簡單的 數據 delet 問題 skip 用法 簡單的用set或者declare語句定義變量,然後直接作為sql的表名是不行的,mysql會把變量名當作表名。在其他的sql數據庫中也是如此,mssql的解決方法是將整條sql語句作為變量,其中穿插

day02 Go 條件語句ifswitch

1、Go 語言提供了以下幾種條件判斷語句 語句 描述 if 語句 if 語句 由一個布林表示式後緊跟一個或多個語句組成。 if...else 語句 if 語句 後可以使用可選的 else

mysql-cluster叢集原理介紹搭建步驟(四個data/sql節點)

MySQL簇概述 MySQL簇是一種技術,該技術允許在無共享的系統中部署“記憶體中”資料庫的簇。通過無共享體系結構,系統能夠使用廉價的硬體,而且對軟硬體無特殊要求。此外,由於每個元件有自己的記憶體和磁碟,不存在單點故障。 MySQL簇將標準的MySQL伺服器與名為NDB的“

MySQL查詢條件中existsin的區別

 mysql中的in語句是把外表和內表作hash 連線, 而exists語句是對外表作loop迴圈,每次loop迴圈再對內表進行查詢。 一直大家都認為exists比in語句的效率要高,這種說法其實是不準確的。要分情況討論: 1. 如果查詢的兩個表大小相當,那麼用in和e

微信小程式10---條件語句if迴圈語句for(三目運算+hidden)

在微信小程式的官方文件中,將這兩個語句歸化在框架的檢視層,分表叫條件渲染和類表渲染,其實他就是封裝了這兩條語句而已。 上圖(迴圈語句if) 1.它是通過在index.js中設定資料,然後再index.wxml中進行判斷,首先上index.wxml的程式碼

Oracle 條件語句 inexists 區別

1、in和existsin是把外表和內表作hash連線,而exists是對外表作loop迴圈,每次loop迴圈再對內表進行查詢,一直以來認為exists比in效率高的說法是不準確的。如果查詢的兩個表大小相當,那麼用in和exists差別不大;如果兩個表中一個較小一個較大,則子

mysql in條件語句

偶爾看到的。。。或許有人會注意過,但我以前真不知道 SQL: select * from table where id IN (3,6,9,1,2,5,8,7); 這樣的情況取出來後,其實,id還是按1,2,3,4,5,6,7,8,9,排序的,但如果我們真要按IN裡面的順序

Mysql 中Left/Right join on後面andwhere條件查詢的差異-Mysql SQL運算子是有優先順序

一、Mysql中Left/Right join on後面and和where條件查詢的差異 1、建兩張測試表,一張商戶定義表、一張商戶操作狀態明細表 1)商戶定義表 CREATE TABLE hope.merchant (  MERCHANT_id varchar(100) COLLATE ut

MYSQL數據類型where條件判斷

where條件 var 否則 float 由於 是否為空 size 邏輯運算 查詢 MySQL中常見的數據類型 一、字符型 ① CHAR(N):固定N個字符長度的字符串,如果長度不夠自動空格補齊; N的範圍 0~255 ② VARCHAR(N): 存儲可變長度的字符串

MYSQL數據類型where條件

pan use gin 如果 sta long 多個 mes 註意 MySQL中常見的數據類型 一、字符型 ① CHAR(N):固定N個字符長度的字符串,如果長度不夠自動空格補齊; N的範圍 0~255 ② VARCHAR(N): 存儲可變長度的字符串,最常用 ③

設置mysql在執行沒where條件的sql語句時提醒

RoCE water mark pro 是否 http images mysq ext 查看mysql是否開啟更新sql語句沒有where的檢測開關,on表示開啟,off表殼關閉 設置命令 通過執行沒有where的Sql語句來驗證設置mysql在執行沒where條件的sql

MySQL - ON & WHERE 條件區別執行順序

一、案例 資料庫在通過連線兩張或多張表來返回記錄時,都會生成一張中間的臨時表,然後再將這張臨時表返回給使用者。 在使用left jion時,on和where條件的區別如下: 1、 on條件是在生成臨時表時使用的條件,它不管on中的條件是否為真,都會返回左邊表中的記錄。 2、