MySQL數值型函數詳解

簡介

本文主要講解MySQL數值型函數,包括:ROUND、RAND、ABS、MOD、TRUNCATE、CEIL、CEILING、FLOOR、POW、POWER、SQRT、LOG、LOG2、LOG10、SIGN、PI

本文所有示例中,雙橫杠左邊為執行的SQL語句,右邊為執行語句的返回值。

ROUND函數

語法:ROUND(X)ROUND(X,D),返回對數值X四舍五入后的結果,如果帶有參數D,則表示保留小數點后D位。

示例:

select ROUND(8);-- 8
select ROUND(8,1);-- 8
select ROUND(8.88);-- 9
select ROUND(8.18);-- 8
select ROUND(8.88,1);-- 8.9
select ROUND(8.18,1);-- 8.2

RAND函數

語法:RAND()RAND(N),如果不帶參數,則表示生成[0-1)范圍內(即大于等于0且小于1)的不重復的隨機數,如果帶隨機數種子值參數N,則會生成可重復的隨機數。

示例:

select RAND();-- 0.09054436263679001
select RAND();-- 0.19845362305497158
select RAND(1);-- 0.40540353712197724
select RAND(1);-- 0.40540353712197724

ABS函數

語法:ABS(X),求數值X的絕對值,若X是正數或者0,則返回其本身,若X是負數,則返回其對應的相反數。

示例:

select ABS(1.8);-- 1.8
select ABS(0);-- 0
select ABS(-8);-- 8

MOD函數

語法:MOD(N,M),返回N除以M后的余數,N和M都可以為小數或負數。

示例:

select MOD(8,3);-- 2
select MOD(-8,3);-- 返回:-2
select MOD(8,2);-- 0
select MOD(-8,2);-- 0
select MOD(1.8,2);-- 1.8
select MOD(8.8,2);-- 0.8
select MOD(8.8,1.8);-- 1.6

TRUNCATE函數

語法:TRUNCATE(X,D),若D為正數,則表示對X舍棄小數部分后D位,若D為負數,則表示對X舍棄整數部分后D位,且連同小數部分一起舍棄。

示例:

select TRUNCATE(8,1);-- 8
select TRUNCATE(8.88,1);-- 8.8
select TRUNCATE(0.18,1);-- 0.1
select TRUNCATE(-0.18,1);-- -0.1
select TRUNCATE(8888,-2);-- 8800
select TRUNCATE(8888.888,-2);-- 8800

CEIL或CEILING函數?

語法:CEIL(X)CEILING(X),兩個函數效果相同,返回不小于X的最小整數,X可以為負數。

示例:

select CEIL(8.1);-- 9
select CEIL(8.8);-- 9
select CEIL(-8.8);-- 返回:-8
select CEIL(8);-- 8

FLOOR函數?

語法:FLOOR(X),返回不大于數值X的最大整數,X可以為負數。

示例:

select FLOOR(8.1);-- 8
select FLOOR(-8.8);-- 返回:-9
select FLOOR(8);-- 8

POW或POWER函數?

語法:POW(X,Y)POWER(X,Y),兩個函數效果相同,返回X的Y次冪。

示例:

select POW(2,3);-- 8
select POW(1.8,3);-- 5.832000000000001

select POW(2,1.8);-- 3.4822022531844965
select POW(1.8,2.8);-- 5.18517017472299
select POW(-2,3);-- 返回:-8
select POW(2,-3);-- 0.125
select POW(-2,-3);-- 返回:-0.125
select POW(0,3);-- 0
select POW(8,0);-- 1
select POW(0,0);-- 1

SQRT函數?

語法:SQRT(X),返回數值X的平方根,若X為負數則會返回NULL。

示例:

select SQRT(64);-- 8
select SQRT(8);-- 2.8284271247461903
select SQRT(0);-- 0
select SQRT(64.8);-- 8.049844718999243

LOG函數?

語法:LOG(B,X)LOG(X),若同時帶參數B和X,則表示獲取B為底X的對數,若只帶參數X,那就是自然對數,表示獲取以常數e為底X的對數,若B或X中任一參數為0或負數,則返回NULL。

示例:

select LOG(2,8);-- 3
select LOG(1.8,8);-- 3.5377487545181276
select LOG(2,8.8);-- 3.137503523749935
select LOG(1.8,8.8);-- 3.69989972781419
select LOG(10);-- 2.302585092994046
select LOG(8.8);-- 2.174751721484161

LOG2或LOG10函數?

語法:LOG2(X)LOG10(X),兩個函數分別返回以2和10為底X的對數。

示例:

select LOG2(8);-- 3
select LOG2(64);-- 6
select LOG10(10);-- 1
select LOG10(100);-- 2

SIGN函數?

語法:SIGN(X),返回數值X的符號,X大于0時,返回1,X等于0時,返回0,X小于0時,返回-1。

示例:

select SIGN(8);-- 1
select SIGN(0);-- 0
select SIGN(-8.8);-- 返回:-1

PI函數?

語法:PI(),返回π的值。

示例:

select PI();-- 3.141593

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/66849.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/66849.shtml
英文地址,請注明出處:http://en.pswp.cn/web/66849.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

自動化01

測試用例的萬能公式:功能測試界面測試性能測試易用性測試安全性測試兼容性測試 自動化的主要目的就是用來進行回歸測試 新產品--第一個版本 (具備豐富的功能),將產品的整體進行測試,人工創造一個自動化測試用例,在n個版本的時候…

Spring中的事務管理器TransactionManager

目錄 一、主要功能 二、使用場景說明 在Spring框架中,事務管理器(TransactionManager)是用于管理事務的重要接口。它提供了對事務的全面控制,包括事務的狀態管理和資源管理等功能。本文將詳細介紹TransactionManager的主要功能、…

c語言(轉義字符)

前言: 內容: 然后記一下轉義字符 \? 在書寫連續多個問號時使用,防止他們被解析成三字母詞 \ 用于表示字符常量 \\ 用于表示一個反斜杠,防止他被解析為一個轉義序列符 \n 換行 \r …

Vue3 30天精進之旅:Day02 - 環境搭建

引言 在前一天的學習中,我們了解了Vue.js的基本概念和優勢。今天,我們將進入實際開發的第一步——環境搭建。良好的開發環境是順利開展項目的基礎,本文將指導你在本地設置Vue開發環境,并快速上手第一個Vue項目。 1. 環境準備 在…

代碼隨想錄 棧與隊列 test 7

347. 前 K 個高頻元素 - 力扣(LeetCode) 首先想到哈希,用key來存元素,value來存出現次數,最后進行排序,時間復雜度約為o(nlogn)。由于只需求前k個,因此可以進行優化,利用堆來維護這…

匯編實驗·子程序設計

一、實驗目的: 1.掌握匯編中子程序編寫方法 2.掌握程序傳遞參數的基本方法,返回值的方法。 3.掌握理解子程序(函數)調用的過程 二、實驗內容 1.編寫匯編語言子程序,實現C表達式SUM=X+Y的功能,具體要求: 1)函數的參數傳遞采用寄存器實現 2)函數的參數傳遞采用堆棧…

jmeter中對接口進行循環請求后獲取相應數據

1、工作中遇到一個場景就是對某個單一接口進行循環請求,并需要獲取每次請求后返回的相應數據; 2、首先就在jmeter對接口相關組件進行配置,需要組件有:循環控制器、CSV數據文件設置、計數器、訪問接口、HTTP信息頭管理器、正則表達…

trimesh 旋轉

trimesh.transformations.rotation_matrix(np.radians(rot_angle), rot_axis) np.radians(rot_angle):將角度 rot_angle 轉換為弧度。trimesh 和大多數 3D 庫通常使用弧度來表示旋轉角度,而不是角度。 rot_axis:表示旋轉軸的向量。例如&…

Jetson Xavier NX 安裝 CUDA 支持的 PyTorch 指南

本指南將幫助開發者完成在 Jetson Xavier NX 上安裝 CUDA 支持的 PyTorch。 安裝方法 在 Jetson 上安裝 Pytorch 只有兩種方法。 一種是直接安裝他人已經編譯好的 PyTorch 輪子;一種是自己從頭開始開始構建 PyTorch 輪子并且安裝。 使用輪子安裝 可以從我的 Gi…

Ansible fetch模塊詳解:輕松從遠程主機抓取文件

在自動化運維的過程中,我們經常需要從遠程主機下載文件到本地,以便進行分析或備份。Ansible的fetch模塊正是為了滿足這一需求而設計的,它可以幫助我們輕松地從遠程主機獲取文件,并將其保存到本地指定的位置。在這篇文章中&#xf…

【AI論文】生成式視頻模型是否通過觀看視頻學習物理原理?

摘要:AI視頻生成領域正經歷一場革命,其質量和真實感在迅速提升。這些進步引發了一場激烈的科學辯論:視頻模型是否學習了能夠發現物理定律的“世界模型”,或者,它們僅僅是復雜的像素預測器,能夠在不理解現實…

論文速讀|Matrix-SSL:Matrix Information Theory for Self-Supervised Learning.ICML24

論文地址:Matrix Information Theory for Self-Supervised Learning 代碼地址:https://github.com/yifanzhang-pro/matrix-ssl bib引用: article{zhang2023matrix,title{Matrix Information Theory for Self-Supervised Learning},author{Zh…

視覺語言模型 (VLMs):跨模態智能的探索

文章目錄 一. VLMs 的重要性與挑戰:連接視覺與語言的橋梁 🌉二. VLMs 的核心訓練范式:四種主流策略 🗺?1. 對比訓練 (Contrastive Training):拉近正例,推遠負例 ??2. 掩碼方法 (Masking):重構…

數據結構——堆(介紹,堆的基本操作、堆排序)

我是一個計算機專業研0的學生卡蒙Camel🐫🐫🐫(剛保研) 記錄每天學習過程(主要學習Java、python、人工智能),總結知識點(內容來自:自我總結網上借鑒&#xff0…

c++迷宮問題(migong)

今天的題目叫“迷宮問題(migong&#xff09;”&#xff0c;是“DFS深度優先搜索 遞歸”一類的。 題目描述 設有一個N*N(2<N<10)方格的迷宮&#xff0c;入口和出口分別在左上角和右上角。迷宮格子中 分別放0和1&#xff0c;0表示可通&#xff0c;1表示不能&#xff0c;入…

機器學習-線性回歸(簡單回歸、多元回歸)

這一篇文章&#xff0c;我們主要來理解一下&#xff0c;什么是線性回歸中的簡單回歸和多元回歸&#xff0c;順便掌握一下特征向量的概念。 一、簡單回歸 簡單回歸是線性回歸的一種最基本形式&#xff0c;它用于研究**一個自變量&#xff08;輸入&#xff09;與一個因變量&…

Git知識分享

一、理解git首先要理清楚下面五個概念&#xff1a; 1、工作區(git add 命令之前的樣子) 2、stash 暫存(暫存工作區和暫存區的更改) 3、暫存區(git add 命令之后的存儲區, 4、本地倉庫(git commit提交的位置) 5、遠程倉庫(git push提交的位置) 二、git常用命令&#xff1a; 1、g…

2024年度技術總結——MCU與MEMS和TOF應用實踐

引言 2024年對我來說是技術成長與突破的一年。在這一年里&#xff0c;我不僅在技術領域拓展了深度和廣度&#xff0c;還通過與客戶合作的實際項目&#xff0c;成功實現了從單一MCU到MCU、MEMS與TOF技術融合的跨越。這一過程中&#xff0c;我深刻認識到&#xff0c;技術的進步不…

一句話,我讓 AI 幫我做了個 P 圖網站!

每到過節&#xff0c;不少小伙伴都會給自己的頭像 P 個圖&#xff0c;加點兒裝飾。 比如圣誕節給自己頭上 P 個圣誕帽&#xff0c;國慶節 P 個小紅旗等等。這是一類比較簡單、需求量卻很大的 P 圖場景&#xff0c;也有很多現成的網站和小程序&#xff0c;能幫你快速完成這件事…

如何打造一個高并發系統?

今天和大家聊聊作為一個后端開發&#xff0c;在實際工作中&#xff0c;我們如何打造一個高并發的系統&#xff1f; 如下圖所示&#xff0c;大概有六個層面&#xff0c;我們結合具體的場景直播間簽到去一一細說。 一、前端 1、打散請求&#xff1a;即把用戶的接口分散一點去請求…