日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

mysql时间相减得到天数保留两位_【敲黑板!】分布式事务数据库 —-MySQL 数据库开发规范(第四节)...

發布時間:2024/9/27 数据库 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mysql时间相减得到天数保留两位_【敲黑板!】分布式事务数据库 —-MySQL 数据库开发规范(第四节)... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

今天Amy著重為大家講解一下關于函數的一些硬核知識,也是本文中非常重要的一個章節,記得認真看(dianzan)哦~

第四節、函數

4.1 字符串連接函數

MySQL 數據庫中字符串連接方法,需使用 CONCAT() 或 CONCAT_ WS()函數,語法如下:

CONCAT(string1,string2,…)

CONCAT_ WS(separator,string1,string2,…)

MySQL 中的 CONCAT 和 Oracle 中的 CONCAT 不同,可以接受任意多個參數,可以較為簡

單的替代’||'符號的作用。MySQL 也可以通過 sql_mode 配置雙管道符作為字符串連接運算符,

但不推薦這樣做。

4.2 字符串長度統計函數

LENGTH(string) #返回 string 字符串所占的字節數

CHAR_LENGTH(string) #返回 string 字符串中的字符個數

統計字符個數,就不區分是漢字還是字母或數字,也跟字符集沒有關系,若統計的是字

節數,則由字符是漢字、字母或數字類型,以及字符集共同決定。

4.2.1 特別說明

我們所有的 MySQL 數據庫都將會采用統一的 UTF8 編碼,所以一個漢字占 3 個字節,

中文輸入法(或稱全角輸入模式)下的字母或數字占 3 個字節;英文輸入法(或半角輸入法

模式)下一個字母或數字占 1 個字節。

4.3 字符串判斷函數

IF(exp1,exp2,exp3):若是 exp1 為真,返回 exp2;若是 exp1 為假,返回 exp3;

IFNULL(exp1,exp2):若是 exp1 IS NOT NULL,返回 exp1,否則返回 exp2;

NULLIF(exp1,exp2):若是 exp1=exp2,返回 NULL,否則返回 exp1;

4.4 字符串替換函數

LTRIM(exp1):去掉 exp1 中字符串開頭的空格;

RTRIM(exp1):去掉 exp1 中字符串結尾的空格;

TRIM(exp1):去掉 exp1 中的開頭和結尾的空格;

TRIM(exp2,exp1):去除掉 exp1 中存在的字符串 exp2;

4.5 字符串查找函數

SUBSTRING_INDEX(exp1,delim,count)

exp1 為 字 符 串 , delim 為 分 割 符 號 , count 表 示 第 幾 個 風 格 符 號 , 例 如 :

SUBSTRING_INDEX(‘熱璞科技’,‘.’,1),返回:ali

SUBSTRING(exp1,pos,len)

exp1 為字符串,pos 為位置,len 為長度,例如:SUBSTRING(‘熱璞科技’,1,5),返回:ali。

LOCAL(substr,str)

查找 substr 在 str 中的第一個位置,例如:LCOAL(熱璞科技’,‘.’),返回:6。

4.6 字母大小寫轉換函數

UPPER(exp1):把字符串 exp1 轉換成大寫;

LOWER(exp1):把字符串 exp1 轉換成小寫;

4.7 數學函數

ABS(value):返回 value 的絕對值,例:ABS(-101),返回:101

FLOOR(value):去掉 value 的小數,例:FLOOR(2013.8),返回:2013

MOD(N,M):返回 N 除以 M 的余數,例:MOD(2013,10),返回:3

ROUND(value):返回 value 的四舍五入值,例:FLOOR(2013.8),返回:2014

ROUND(value,num):保留 num 位小數 value 的四舍五入值,例FLOOR(2013.867,1),返回:2013.9

RAND():返回隨機數值

4.8 日期操作函數

獲取當前時間函數:NOW()、CURDATE()、CURTIME()

NOW()函數精確到秒, 格式:YYYY-MM-DD HH:MM:SS

CURDATE()函數精確到天, 格式:YYYY-MM-DD

CURTIME()函數提供小時、分鐘、秒, 格式:HH:MM:SS

4.8.1 特別說明

從主備數據異步復制的數據安全性角度出發,禁止使用 SYSDATE()函數獲取當前時間。

日期數值的加減函數

DATE_ADD(date,INTERVAL expr type)

DATE_ SUB(date,INTERVAL expr type)

常用的幾種 type 類型:YEAR、MONTH、DAY、HOUR、MINUTE,其中 expr 可以為

正數或負數,我們在開過程中,一般使用 DATE_ADD()函數,若要做日期減去一個數字的

方式,就使用負數。

MySQL 中不能像 Oracle 那樣直接對時間類型進行加減運算,直接使用加減運算符不會

得到符合預期的結果,需要使用函數進行運算。

DATEDIFF(expr1,expr2),是返回 開始日期 expr1 與 結束日期 expr2 之間,相差的天

數 ,返回值為正數或負數。

返回日期某部分信息的函數

YEAR(expr1) 返回日期 expr1 部分的年份;

MONTH(expr1) 返回日期 expr1 部分的月份;

DAY(expr1)返回 expr1 部分的天數;

WEEKDAY(expr1)返回 expr1 對應的星期數字,0 表示星期一,1 表示星期二,其他依次類

推;

4.9 類型轉換函數

? 日期類型格式轉換

字符串轉換成日期方式,DATE_FORMAT()或 STR_TO_DATE(),兩個函數的格式如下:

DATE_FORMAT(expr1,format)

STR_TO_DATE(expr1, format)

4.9.1 特別說明

STR_TO_DATE()是為兼容 Oracle 數據庫對應函數。

常用的日期格式 YYYY-MM-DD HH:MM:SS 對應的 FORMAT 為:%Y-%m-%d %H:%i:%S。

通用類型轉換函數

CAST(expr AS type) 則是把 expr 數字或字符串 轉換為 type 類型;

CONVERT(expr,type) 則是把 expr 數字或字符串 轉換為 type 類型;

CONVERT(expr USING transcoding_name) 則是轉換字符串或字段的字符集編碼;

日期整型轉換函數

UNIX_TIMESTAMP(date_string) 則是將字符串格式表達的日期轉換成 INT 無符號類型的整

型數值,例如:

FROM_UNIXTIME(int_value) 則是將用整型數值表達的日期轉換成字符串格式的日期,例

如:

IP 地址轉換

可以使用 INET_ATON()、INET_NTOA()、INET6_ATON()、INET6_NTOA()實現 IP 地址和

整型值之間的轉換。

隱式轉換

在不同類型的列之間發生比較或運算時,MySQL 遵循如下規則:

NULL 和 NULL 比較不轉換;

字符串和不同的字符串比較,則使用字符串比較;

整型和不同的整型比較,則使用整型比較;

十六進制值和整型以外的類型比較時十六進制值視為二進制字符串;

時間類型和字符串常量比較時,字符串轉換為時間類型進行比較;

DECIMAL 類型的比較方式取決于另一個值的類型,如果是整型,則使用 DECIMAL 比

較;如果是浮點型,則使用浮點類型比較。其它情況,使用浮點比較;

4.10 特殊函數

SYSDATE()

原意為獲取調用函數時刻的時間,通常在標準化的 MySQL 配置中,會將其修改為 NOW()

的同義詞,為 SQL 語句開始執行的時間。從而規避 SYSDATE 帶來的復制問題與

sysdate-is-now 參數帶來的行為改變導致的潛在的配置不一致風險兩個角度考慮,故建議禁

止使用函數 SYSDATE()。

LAST_INSERT_ID()

獲取最近成功插入帶自增長的表的數據行的自增長 ID 值,在分布式數據庫開發當中,因可

能涉及到分布式事務,以及全局自增 ID,因此,禁止使用該函數。

SLEEP()、BENCHMARK()

應用程序中要禁止使用此類函數,及防 SQL 注入方式對待。

UUID()

生產全局唯一 ID 的函數,MySQL 使用通用的算法,算法版本為 1,該函數不能確保絕對不

發生沖突,但是沖突的概率極低。由于 UUID 分布的隨機性,非常不適合作為 InnoDB 存儲

引擎表的主鍵或唯一性的標識,非特殊原因或特殊場景不應使用。

GET_LOCK()、RELEASE_LOCK()、IS_FREE_LOCK()、IS_USED_LOCK()

用戶鎖函數,對于定時調度存儲過程,該系列函數可以用于確保只有一個存儲過程正在運行

類型的特殊功能,或者控制應用程序單線程運行類型的特殊功能。我們建議不要在分布式數

據庫中使用存儲過程,因此,也禁止使用此類函數。

4.11 聚合函數

分布式數據庫 能夠支持聚合函數與 GROUP BY,ORDER BY,HAVING 的使用;也

可以在 JOIN 語句中使用聚合函數。如:

SELECT count(t.id) FROM t LEFT JOIN t1 on t.id=t1.id GROUP BY t.name;

4.11.1 嵌套聚合函數

禁止在分布式數據庫中使用 MAX(AVG())、COUNT(DISTINCT)這之類的嵌套聚合函數。

好了,以上就是今天的內容,我們明天再見啦~啵唧~

總結

以上是生活随笔為你收集整理的mysql时间相减得到天数保留两位_【敲黑板!】分布式事务数据库 —-MySQL 数据库开发规范(第四节)...的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 香蕉视频官网 | 欧美骚少妇 | sese在线视频 | 亚洲综合免费观看高清完整版在线 | 亚洲天堂2021av| 欧美色一区二区三区在线观看 | 伊人免费视频 | 一本一道波多野结衣av黑人 | 色综合天天综合网天天看片 | 在线视频天堂 | 国产丝袜在线视频 | 欧洲一区二区视频 | 午夜电影一区二区三区 | 999精品视频在线观看 | 男人天堂免费视频 | 97久久国产精品 | 你懂的网址在线观看 | 爱爱一级 | 国产原创剧情av | 96看片| 精品无码m3u8在线观看 | 蜜桃av一区 | 精品妇女一区二区三区 | 精品久久久久久久久久久久久久久久 | 国产卡一卡二卡三无线乱码新区 | 国产一区二区三区视频免费观看 | 奇米精品一区二区三区在线观看一 | 国产欧美日本 | 精品一性一色一乱农村 | 婷婷.com| 美女高潮流白浆视频 | beeg日本高清xxxx18 | 人妻少妇被粗大爽9797pw | 免费在线播放视频 | 国产黄网在线观看 | 久久精品这里 | 福利电影一区二区 | 欧美日本黄色 | 成人开心网 | 欧美日韩中文国产一区发布 | 精品久久久噜噜噜久久久 | 久久成人小视频 | 综合伊人av | 星空无限mv国产剧入选 | youjizz.com在线观看 | 色老汉av一区二区三区 | 欧美激情成人 | 国产欧美亚洲精品 | 成人在线免费视频播放 | 另类一区 | 日本四虎影院 | 国产在线xx| 久久最新 | 午夜网站在线 | 性生交大片免费看 | 国产调教 | 337p日本欧洲亚洲大胆张筱雨 | 日本黄色网络 | 最好看的2019年中文视频 | 国产精品九九九九九 | 黄色网www| 国产一级黄色大片 | 欧美视频亚洲视频 | 免费观看黄色网页 | 三级性视频 | 欧美三日本三级少妇三级99观看视频 | 欧美成人三级在线观看 | 日韩欧美中文字幕在线播放 | 激情久久五月天 | 亚洲国产精品一区二区尤物区 | 亚洲aⅴ乱码精品成人区 | 日韩欧美精品一区二区 | 久热色 | 韩国甜性涩爱 | 四虎国产在线观看 | 久婷婷 | 日本99视频 | 久久九 | 亚洲第一页在线观看 | 天天爱天天做天天爽 | 成年人晚上看的视频 | 91av片| 在线看片网站 | 久草视频这里只有精品 | 干爹你真棒插曲mv在线观看 | 国产精品一品二区三区的使用体验 | 国产成人精品影院 | 永久免费av| 天天搞天天干 | 亚洲综合图片一区 | 亚洲欧美日本一区二区三区 | 国产色秀视频 | 久久久久久久久免费看无码 | 五月婷在线 | 日本在线一| 麻豆tv在线观看 | 色悠久 | 欧美a久久 | 亚洲图色av|