MySQL學習筆記(5):運算符

来源:https://www.cnblogs.com/garvenc/archive/2020/06/24/mysql_learning_5_operator.html
-Advertisement-
Play Games

本文更新於2020-06-14,使用MySQL 5.7,操作系統為Deepin 15.4。 算數運算符 運算符 語法 說明 + a + b 加法 - a - b 減法 * a * b 乘法 / a / b 除法。類似DIV,但DIV會對結果取整,/的結果可為小數 % a % b 取餘。類似MOD 除 ...


本文更新於2020-06-14,使用MySQL 5.7,操作系統為Deepin 15.4。

目錄

算數運算符

運算符 語法 說明
+ a + b 加法
- a - b 減法
* a * b 乘法
/ a / b 除法。類似DIV,但DIV會對結果取整,/的結果可為小數
% a % b 取餘。類似MOD
  • 除法和取模,若除數為0,則返回NULL
  • NULL參與的算數運算都返回NULL

比較運算符

運算符 語法 說明
= a = b 等於
!=或<> a != b 不等於
<=> a <=> b NULL安全的等於
< a < b 小於
<= a <= b 小於等於
> a > b 大於
>= a >= b 大於等於
BETWEEN a BETWEEN min AND max 存在於指定區間[min, max]
IN a IN (value[, ...]) 存在於指定集合
IS a IS [NOT] NULL 是否為NULL
LIKE a LIKE 'pattern' 通配符匹配
REGEXP或RLIKE a REGEXP 'regexp' 正則表達式匹配
  • 若比較結果為真則返回1,為假則返回0,不確定則返回NULL
  • 兩個字元串字面量直接用=比較時,不區分大小寫。
  • NULL <=> NULL返回1,其他值與NULL比較都返回NULL
  • LIKE的模式可使用%表示0個或多個任意字元。

正則表達式的模式如下:

模式 作用
^ 匹配字元串開始
$ 匹配字元串結尾
. 匹配任意單個字元,包括換行符
[...] 匹配括弧中的任意字元
[^...] 匹配不在括弧中的任意字元
a* 匹配0個或多個a
a+ 匹配1個或多個a
a? 匹配0個或1個a
a|b 匹配a或b
a(n) 匹配n個a
a(n,) 匹配n個或更多個a
a(n, m) 匹配n到m個a
a(, n) 匹配0到n個a
(...) 將模式元素組成單一元素

邏輯運算符

運算符 語法 說明
!或NOT !a
&&或AND a && b
||或OR a || b
XOR a XOR b 異或
  • 若結果為真則返回1,為假則返回0,不確定則返回NULL
  • NULL參與||運算,當另一個操作數為1時,返回1,否則返回NULLNULL參與其他邏輯運算均返回NULL,包括NOT NULL

位運算符

運算符 語法 說明
~ ~a 按位反
& a & b 按位與
| a | b 按位或
^ a ^ b 按位異或
>> a >> b 位右移
<< a << b 位左移
  • 位運算得出的結果為十進位形式的整數。
  • 常量數字預設是8位元組。
  • <<右側補0,>>左側補0,都會連帶符號位一起移動。負數移位後的結果為無符號整數。

運算符優先順序

按優先順序從高到低依次為:

運算符類型 運算符
單目運算符 !
單目運算符 -、~
單目運算符 ^
算數運算符 *、/(DIV)、%(MOD)
算數運算符 +、-
位運算符 <<、>>
位運算符 &
位運算符 |
比較運算符 =、!=(<>)、<=>、<、<=、>、>=、BETWEEN、IN、IS、LIKE、REGEXP(RLIKE)
BETWEEN、CASE、WHEN、THEN、ELSE
邏輯運算符 !(NOT)
邏輯運算符 &&(AND)
邏輯運算符 ||(OR)、XOR
賦值運算符 :=

您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 1. 概念 自旋鎖的目的是在短期間內進行輕量級的鎖定,解決對某項共用資源的互斥使用,在等待鎖重新可用期間進行自旋,所以自旋鎖不應該被持有時間過長,如果需要長時間鎖定的話,推薦使用信號量。實際操作的數據結構如下: 2. 獲取鎖 最終執行的代碼是體繫結構相關的自旋鎖實現:arch_spin_lock。 ...
  • 實驗一 安裝OpenShift1.1 前置準備[student@workstation ~]$ lab review-install setup1.2 配置規劃OpenShift集群有三個節點:master.lab.example.com:OpenShift master節點,是一個不可調度pod的 ...
  • 鍵盤俠Linux乾貨| ELK(Elasticsearch + Logstash + Kibana) 搭建教程 全網最簡單 ...
  • 常見註釋 -- 很少支持 #行內註釋 /**/段落註釋 基礎語法 SELECT 檢索數據 語法 作用 例子 釋義 select 查找列,並返回行 select prod_name from products;#可使用,分隔列名來查找多個列。 查找prod_name列,並返回其下的所有行,在produ ...
  • 索引首碼 使用 字元串列的索引規範中的語法,您可以創建僅使用列首字元的索引 。以這種方式僅索引列值的首碼可以使索引文件小得多。為a 或 column 編製索引時 , 必須為索引指定首碼長度。例如: col_name(N)NBLOBTEXT CREATE TABLE test (blob_col BL ...
  • 一、異常現象截圖 二、解決方式: 1、背景 早期的canal版本(<=1.0.24),在處理表結構的DDL變更時採用了一種簡單的策略,在記憶體里維護了一個當前資料庫內表結構的鏡像(通過desc table獲取)。 這樣的記憶體表結構鏡像的維護存在問題,如果當前在處理的binlog為歷史時間段T0,當前時 ...
  • 1 select DATE_FORMAT(dtl.transdate,'%Y-%m-%d') as transdate, 2 right(DATE_FORMAT(concat(transdate,transtime),'%Y-%m-%d %H:%i:%s'),8) as 3 transtime,dt ...
  • SELECT語句用於從表中選取/查詢數據,結果被存儲在一個結果表中(稱為結果集)。 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...