MySQL:函數

提醒: 設定下面的語句是在數據庫名為 db_book里執行的。
創建user_info表

注意:pwd為密碼字段,這里使用了VARCHAR(128)類型,為了后面方便對比,開發項目里一般使用char(32),SQL語句里使用MD5加密函數

USE db_book;
CREATE TABLE user_info(id INT NOT NULL AUTO_INCREMENT,userName VARCHAR(30) DEFAULT NULL,age INT,sex VARCHAR(4) DEFAULT NULL,moblie VARCHAR(11) DEFAULT NULL,pwd VARCHAR(128) DEFAULT NULL,birthday DATE DEFAULT NULL,avatar  VARCHAR(100) DEFAULT NULL,num INT,PRIMARY KEY(id)
);

為user_info表里添加多條數據

USE db_book;
INSERT INTO user_info(userName,age,sex,moblie,pwd,birthday,avatar,num)VALUES('用戶1',20,'男',12345678901,123456,'2024-03-01',NULL,1),('用戶2',22,'男',13345678902,'123456adc','2023-10-01',NULL,2),('用戶3',23,'女',14345678903,'2423adbc','2022-12-08','https://test.avatar.1234abc',3),('Test4',24,'男',13345678902,'123456adc4','2021-04-02',NULL,4123400),('test5',25,'女',15345678902,'123456adc5','2020-11-22',NULL,51234666);

查詢user_info表數據

在這里插入圖片描述

一、日期和時間函數

  1. CURDATE() 返回當前日期
    只包含年、月、日部分,格式為YYYY-MM-DD;
  2. CURTIME() 返回當前時間
    只包含時、分、秒部分,格式為HH:MM:SS
  3. MONTH(d)返回日期d中的月份值,范里是1~12
  4. NOW()函數 返回當前日期和時間
    包含年、月、日、時、分、秒,格式為YYYY-MM-DD HH:MM:SS
  5. UNIX_TIMESTAMP(date)函數
    將date轉化為UNIX時間戳
SELECT CURDATE(),CURTIME(),NOW(),UNIX_TIMESTAMP(NOW()),MONTH(birthday)FROM db_book.user_info;/*日期和時間函數*/

執行結果
在這里插入圖片描述

UNIX_TIMESTAMP 函數示例
在終端里執行: SELECT UNIX_TIMESTAMP(now());
在這里插入圖片描述

CURDATE()函數示例
在終端里執行:SELECT CURDATE();
在這里插入圖片描述

其他幾個日期函數執行操心和上面一樣

使用AS為列名設置別名

SELECT CURDATE(),CURTIME(),NOW(),MONTH(birthday) AS m FROM db_book.user_info;

執行結果
在這里插入圖片描述

二、字符串函數

  1. CHAR_LENGTH(s) 計算字符串s的字符數;
  2. UPPER(s) 把所有字母變成大寫字母;
  3. LOWER(s) 把所有字母變成小寫字母;
SELECT userName,CHAR_LENGTH(userName),UPPER(userName),LOWER(userName)FROM db_book.user_info;/*字符串函數*/

執行結果
在這里插入圖片描述

三、數學函數

  1. A BS(x)求絕對值
  2. SQRT(x)求平方根
  3. MOD(x.y)求余
SELECT num,ABS(num) FROM db_book.user_info;/*求絕對值*/
3.1 求絕對值

執行結果
在這里插入圖片描述

SELECT SQRT(num) FROM db_book.user_info;/*對num求平方根*/

執行結果
在這里插入圖片描述

3.2 求平方根
SELECT SQRT(4);/*對4求平方根*/

終端里執行結果
在這里插入圖片描述

MySQL Workbench執行結果
在這里插入圖片描述

3.3 求余
SELECT MOD(9,2);/*求余*/

終端執行結果
在這里插入圖片描述

四、加密函數

  1. PASSWORD(Str) 一般對用戶的密碼加密 不可逆
    注意:mysql8.0 已經棄用PASSWORD()函數了,可以使用MD5函數代替
  2. MD5(str)普通加密 不可逆
  3. ENCODE(SLr,pswd_str)加密函數,結果是一個二進制數,必須使用BLOB 類型的字段來保存它;
    注意:mysql8.0 已經找不到ENCODE()函數了,可以使用MD5函數代替
  4. DECODE(crypt_str,pswd_str)解密函數;
    注意:mysql8.0 已經找不到DECODE()函數了,可以使用MD5函數代替
4.1 PASSWORD

注意:mysql8.0 已經棄用PASSWORD()函數了,可以使用MD5函數代替
在mysql8.0以下版本執行下面SQ語句

INSERT INTO db_book.user_info(userName,age,sex,moblie,pwd,birthday,avatar,num)VALUE('用戶6',26,'男',16345678906,PASSWORD('123456abcd'),'2024-03-01',NULL,20666);
4.2 MD5
INSERT INTO db_book.user_info(userName,age,sex,moblie,pwd,birthday,avatar,num)VALUES('用戶7',27,'男',17645678907,MD5('123456abcd'),'1996-06-21',NULL,20670);

執行結果
在這里插入圖片描述

查詢user_info表數據
在這里插入圖片描述

4.3 ENCODE

注意:mysql8.0 已經找不到ENCODE()函數了,可以使用MD5函數或其他函數代替
在mysql8.0以下版本執行下面SQ語句

INSERT INTO db_book.user_info(userName,age,sex,moblie,pwd,birthday,avatar,num)
VALUES('用戶8',28,'男',17645678907,MD5('23456ad'),'1995-06-21',ENCODE('https://abcd.avatar','ak'),20680);
4.4 DECODE

注意:mysql8.0 已經找不到DECODE()函數了,可以使用MD5函數或其他代替
在mysql8.0以下版本執行下面SQ語句

SELECT DECODE(avatar,'ak') FROM db_book.user_info WHERE num = 20680;

推薦

MySQL:常用的SQL語句

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

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

相關文章

【博圖TIA-Api】通過Excel自動新建文件夾和導入FB塊

【博圖TIA-Api】通過Excel自動新建文件夾和導入FB塊 說明思路準備獲取Excel表格內文件名和FB塊名等信息新建文件夾部分篩分獲取的文件夾數據,去掉重復內容創建文件夾 導入FB塊導出FB塊的xml文件查找需要放置的文件夾導入塊 說明 續上一篇文章,這次是根據…

多線程 --- [ 線程池、線程安全、其他常見的鎖 ]

目錄 1. 線程池 模塊一:線程的封裝 模塊二:線程池的封裝 模塊三:互斥量的封裝 (RAII風格) 模塊四:任務的封裝 模塊五:日志的封裝 模塊六:時間的封裝 模塊六:主函數 模塊七&#xff1a…

備戰藍橋杯---狀態壓縮DP進階題1

我們來看一看一道比較難的問題(十分十分的巧妙): 顯然我們應該一行一行放,又豎的會對下一行產生影響,我們令橫著放為0,豎著放的上方為1. 對于下一行,前一行放1的下面為0,但是會出現…

【Redis | 第九篇】一篇文章看懂Redis持久化機制

文章目錄 9.一篇文章看懂Redis持久化機制9.1Redis的兩種持久化機制9.1.1為什么有持久化? 9.2RDB機制9.2.1介紹9.2.2觸發機制(1)save命令觸發(2)bgsave命令觸發(3)自動觸發 9.2.3執行流程9.2.4優…

C++知識點總結(22):模擬算法真題 ★★★★☆《卡牌游戲》《移動距離》

一、卡牌游戲 1. 審題 題目描述 A , B , C A,B,C A,B,C 三人在玩一個卡牌游戲,規則如下: 游戲開始時, 3 3 3 人分別會得到若干張手牌, 每張牌上寫著 a,b,c 中某一個字母。手牌的順序嚴格按照輸入順序排列&#xff0c…

前端【技術類】資源學習網站整理(那些年的小網站)

學習網站整理 值得分享的視頻博主:學習網站鏈接 百度首頁的資源收藏里的截圖(排列順序沒有任何意義,隨性而已~),可根據我標注的關鍵詞百度搜索到這些網站呀,本篇末尾會一一列出來,供大家學習呀 …

徹底搞懂回溯算法(例題詳解)

目錄 什么是回溯算法: 子集問題: 子集問題II(元素可重復但不可復選): 組合問題: 組合問題II(元素可重復但不可復選): 排列問題: 排列問題II(元素可重復但不可復選): 什么是回溯算法: 「回溯是遞歸的副產品&…

最小生成樹---Kruskal算法

最小生成樹定義: 給定一張邊帶權的無向圖 G(V,E),其中 V 表示圖中點的集合,E 表示圖中邊的集合。 由 V 中的全部 n 個頂點和 E 中 n?1 條邊構成的無向連通子圖被稱為 G 的一棵生成樹,其中邊的權值之和最小的生成樹被稱為無向圖 G…

leetcode hot100 每日溫度

在本題中,我們是通過單調棧來解決的,因為我們采用了棧的數據結構,并且,棧內存儲的元素是單調的。 本題我們考慮,將氣溫數組元素的下標存入棧中,首先初始化要把0放入,0是下標的意思。然后我們拿…

華為HCIP Datacom H12-821 卷4

1.單選題 下面哪些策略或工具不能夠應用于 OSPF: A、access-list B、prefix-list C、route- Policy D、as-path filter 正確答案: D 解析: as-path-filter命令用來創建AS路徑過濾器,OSPF屬于IGP協議,不涉及到AS號。 2.單選題…

【python基礎學習05課_for循環以及雙重for循環】

FOR循環 一、認識循環-while 1、循環條件不能超出列表長度 當i 1&#xff0c;while i < len(lst1) 時&#xff0c;i 3后, 打印print&#xff08;lst[3]&#xff09;小宋老師&#xff0c; 繼續1, i 4, 4不小于 len(lst1)&#xff0c;打破循環。 2、循環條件超出列表長度報錯…

JMeter元件和采樣器一覽

Apache JMeter是一個強大的開源負載測試工具&#xff0c;用于性能和功能測試。JMeter提供了豐富的元件和采樣器&#xff0c;使得它能夠模擬復雜的測試場景和高并發的用戶請求。以下是JMeter中常用的一些元件和采樣器的介紹和講解&#xff1a; 測試計劃元件 測試計劃&#xff0…

latex報錯I was expecting a `,‘ or a `}‘的解決辦法

解決辦法——經過檢查在ref22后面缺少一個逗號 總結 當你在使用LaTeX時遇到“I was expecting a , or a }”這樣的錯誤&#xff0c;這通常意味著LaTeX在解析你的代碼時&#xff0c;預期在某個位置看到一個逗號&#xff08;,&#xff09;或一個大括號&#xff08;}&#xff09;…

每日一題 2369

2369. 檢查數組是否存在有效劃分 題目描述&#xff1a; 給你一個下標從 0 開始的整數數組 nums &#xff0c;你必須將數組劃分為一個或多個 連續 子數組。 如果獲得的這些子數組中每個都能滿足下述條件 之一 &#xff0c;則可以稱其為數組的一種 有效 劃分&#xff1a; 子數…

PTA 1010 一元多項式求導

1010 一元多項式求導 (25分) C/C - 知乎 (zhihu.com) #include<stdio.h> int main(){ int x,n; scanf("%d %d",&x,&n); if(n0)printf("%d %d",0,0); //n0 說明是常數&#xff0c;不需要求導 else printf("%d %…

STM32 串口通信

串口發原理 在stm32每個串口內部有發送寄存器和發送移位寄存器。 當調用HAL_UART_Transmit 時&#xff0c;cpu會將發送的數據放入發送寄存器中。發送移位寄存器會將數據轉換成電平的高低&#xff0c;從TX發出。 1、輪詢模式配置、發送與接收 輪詢模式時cpu會不斷檢測發送數…

嵌入式中匯編語言的基本實現

大家好&#xff0c;今天給大家分享&#xff0c;GNU匯編的語法。 第一&#xff1a;匯編簡介 GNU 匯編語法適用于所有的架構&#xff0c;并不是 ARM 獨享的&#xff0c;GNU 匯編由一系列的語句組成&#xff0c; 每行一條語句&#xff0c;每條語句有三個可選部分&#xff0c;如下…

小白學視覺 | 詳解遺傳算法 GA(Python實現代碼)

本文來源公眾號“小白學視覺”&#xff0c;僅用于學術分享&#xff0c;侵權刪&#xff0c;干貨滿滿。 原文鏈接&#xff1a;詳解遺傳算法 GA&#xff08;Python實現代碼&#xff09; 轉自&#xff1a;機器之心 英文&#xff1a;www.analyticsvidhya.com/blog/2017/07/introduc…

在線上傳解壓PHP文件代碼,壓縮/壓縮(網站一鍵打包)支持密碼登錄

在線上傳解壓PHP文件代碼&#xff0c;壓縮/壓縮(網站一鍵打包)支持密碼登錄 資源寶分享&#xff1a;www.httple.net 如果你沒有主機控制面板這個是最好選擇&#xff0c;不需要數據庫&#xff0c;上傳當控制面板使用&#xff0c;無需安裝任何擴展&#xff0c;安全高&#xff0c;…

重拾前端基礎知識:CSS

重拾前端基礎知識&#xff1a;CSS 前言選擇器簡單選擇器屬性選擇器組合選擇器 插入CSS內嵌樣式&#xff08;Inline Style&#xff09;內部樣式&#xff08;Internal Style&#xff09;外部樣式&#xff08;External Style&#xff09; 層疊顏色背景顏色文本顏色RGB 顏色HEX 顏色…