国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

MySQL數(shù)據(jù)庫:內(nèi)置函數(shù)

這篇具有很好參考價值的文章主要介紹了MySQL數(shù)據(jù)庫:內(nèi)置函數(shù)。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

日期函數(shù)?

規(guī)定:日期:年月日? ? ? ?時間:時分秒

函數(shù)名稱 作用描述
current_date() 當前日期
current_time() 當前時間
current_timestamp() 當前時間戳
date(datetime) 返回datetime參數(shù)的日期部分
date_add(date,interval d_value_type) 在date中添加時間或日期。interval后面可以是year、day、minute、second
date_sub(date,interval d_value_type) 在date中減去時間或日期。interval后面可以是year、day、minute、second
datediff(date1,date2) 兩個日期的時間差,單位是天
now()

當前時間日期

函數(shù)使用演示

獲得年月日:

mysql> select current_date;
+--------------+
| current_date |
+--------------+
| 2023-08-16   |
+--------------+
1 row in set (0.00 sec)

獲得時分秒:

mysql> select current_time;
+--------------+
| current_time |
+--------------+
| 23:37:33     |
+--------------+
1 row in set (0.00 sec)

獲得時間戳:

mysql> select current_timestamp;
+---------------------+
| current_timestamp   |
+---------------------+
| 2023-08-16 23:38:11 |
+---------------------+
1 row in set (0.00 sec)

在日期的基礎上加日期:

mysql> select date_add(now(),interval 10 day);  ---加10天
+---------------------------------+
| date_add(now(),interval 10 day) |
+---------------------------------+
| 2023-08-26 23:39:04             |
+---------------------------------+
1 row in set (0.00 sec)

mysql> select now();-----當前的日期天數(shù)
+---------------------+
| now()               |
+---------------------+
| 2023-08-16 23:39:11 |
+---------------------+
1 row in set (0.00 sec)

在日期的基礎上減去時間:

mysql> select now();-----原本的日期
+---------------------+
| now()               |
+---------------------+
| 2023-08-16 23:40:08 |
+---------------------+
1 row in set (0.00 sec)

mysql> select date_sub(now(),interval 5 day);----5天前
+--------------------------------+
| date_sub(now(),interval 5 day) |
+--------------------------------+
| 2023-08-11 23:40:26            |
+--------------------------------+
1 row in set (0.00 sec)

計算兩個日期之間相差多少天:

mysql> select datediff('2019-12-31','2023-8-16');
+------------------------------------+
| datediff('2019-12-31','2023-8-16') |
+------------------------------------+
|                              -1324 |
+------------------------------------+
1 row in set (0.00 sec)

mysql> select datediff('2023-8-16','2019-12-31');
+------------------------------------+
| datediff('2023-8-16','2019-12-31') |
+------------------------------------+
|                               1324 |
+------------------------------------+
1 row in set (0.00 sec)

案例

1.創(chuàng)建一張表,記錄生日,添加當前日期:
?

mysql> create table tmp(
    -> id int primary key auto_increment,
    -> birthday date
    -> );
Query OK, 0 rows affected (0.03 sec)

mysql> insert into tmp(birthday) values(current_date());
Query OK, 1 row affected (0.01 sec)

mysql> select * from tmp;
+----+------------+
| id | birthday   |
+----+------------+
|  1 | 2023-08-16 |
+----+------------+
1 row in set (0.00 sec)

2.創(chuàng)建一個留言表,插入相關(guān)數(shù)據(jù)。①顯示所有留言信息,發(fā)布日期只顯示日期,不用顯示時間②查詢在2分鐘內(nèi)發(fā)布的帖子。

  • 建表
mysql> create table msg(
    -> id int primary key auto_increment,
    -> content varchar(30) not null,
    -> sendtime datetime);
Query OK, 0 rows affected (0.03 sec)
  • 插入數(shù)據(jù)
mysql> insert into msg(content,sendtime) values('中午吃什么?',now());
Query OK, 1 row affected (0.00 sec)

mysql> insert into msg(content,sendtime) values('我想吃螺螄粉,可以嗎',now());
Query OK, 1 row affected (0.00 sec)

mysql> select * from msg;
+----+--------------------------------+---------------------+
| id | content                        | sendtime            |
+----+--------------------------------+---------------------+
|  1 | 中午吃什么?                   | 2023-08-16 23:51:57 |
|  2 | 我想吃螺螄粉,可以嗎           | 2023-08-16 23:52:09 |
+----+--------------------------------+---------------------+
2 rows in set (0.00 sec)
  • 顯示所有留言信息,發(fā)布日期只顯示日期,不用顯示時間
    ?
mysql> select content,date(sendtime) from msg;
+--------------------------------+----------------+
| content                        | date(sendtime) |
+--------------------------------+----------------+
| 中午吃什么?                   | 2023-08-16     |
| 我想吃螺螄粉,可以嗎           | 2023-08-16     |
+--------------------------------+----------------+
2 rows in set (0.00 sec)
  • 請查詢在2分鐘內(nèi)發(fā)布的帖子
    ?
mysql> insert into msg(content,sendtime) values('項目做了嗎?',now());
Query OK, 1 row affected (0.01 sec)

mysql> select * from msg where date_add(sendtime,interval 2 minute) > now();
+----+--------------------+---------------------+
| id | content            | sendtime            |
+----+--------------------+---------------------+
|  3 | 項目做了嗎?       | 2023-08-16 23:56:26 |
+----+--------------------+---------------------+
1 row in set (0.00 sec)

MySQL數(shù)據(jù)庫:內(nèi)置函數(shù),Mysql數(shù)據(jù)庫,數(shù)據(jù)庫,mysql

字符串函數(shù)

MySQL數(shù)據(jù)庫:內(nèi)置函數(shù),Mysql數(shù)據(jù)庫,數(shù)據(jù)庫,mysql

案例:

  • 獲取stu表的 name的字符集----使用charset字符串函數(shù)

stu表:?

mysql> desc stu;
+----------+-------------+------+-----+---------+-------+
| Field    | Type        | Null | Key | Default | Extra |
+----------+-------------+------+-----+---------+-------+
| id       | int(11)     | NO   | PRI | NULL    |       |
| name     | varchar(30) | NO   |     | NULL    |       |
| class_id | int(11)     | YES  | MUL | NULL    |       |
+----------+-------------+------+-----+---------+-------+
3 rows in set (0.00 sec)

mysql> select charset(name) from stu;  ----獲取字符串的字符集
+---------------+
| charset(name) |
+---------------+
| utf8          |
| utf8          |
+---------------+
2 rows in set (0.00 sec)
  • 要求顯示exam_result表中的信息,顯示格式:“XXX的語文是XXX分,數(shù)學XXX分,英語XXX分”----使用concat字符串函數(shù)
    ?
mysql> desc exam_result
    -> ;
+---------+------------------+------+-----+---------+----------------+
| Field   | Type             | Null | Key | Default | Extra          |
+---------+------------------+------+-----+---------+----------------+
| id      | int(10) unsigned | NO   | PRI | NULL    | auto_increment |
| name    | varchar(20)      | NO   |     | NULL    |                |
| chinese | float            | YES  |     | 0       |                |
| math    | float            | YES  |     | 0       |                |
| english | float            | YES  |     | 0       |                |
| qq      | char(10)         | YES  |     | NULL    |                |
+---------+------------------+------+-----+---------+----------------+
6 rows in set (0.00 sec)

mysql> select concat(name,'的語文是',chinese,'分, 數(shù)學是',math,'分') as '分數(shù)' from exam_result;
+----------------------------------------------+
| 分數(shù)                                         |
+----------------------------------------------+
| 唐三藏的語文是134分, 數(shù)學是98分              |
| 豬悟能的語文是176分, 數(shù)學是98分              |
| 曹孟德的語文是140分, 數(shù)學是90分              |
| 劉玄德的語文是110分, 數(shù)學是115分             |
| 孫權(quán)的語文是140分, 數(shù)學是73分                |
| 宋公明的語文是150分, 數(shù)學是95分              |
+----------------------------------------------+
6 rows in set (0.00 sec)
  • 求exam_result中學生姓名占用的字節(jié)數(shù)---使用length字符串函數(shù)

注意:length函數(shù)返回字符串長度,以字節(jié)為單位。如果是多字節(jié)字符則計算多個字節(jié)數(shù);如果是單字節(jié)字符則算作一個字節(jié)。比如:字母,數(shù)字算作一個字節(jié),中文表示多個字節(jié)數(shù)(與字符集編碼有關(guān))。

mysql> select length(name),name from exam_result;
+--------------+-----------+
| length(name) | name      |
+--------------+-----------+
|            9 | 唐三藏    |
|            9 | 豬悟能    |
|            9 | 曹孟德    |
|            9 | 劉玄德    |
|            6 | 孫權(quán)      |
|            9 | 宋公明    |
+--------------+-----------+
6 rows in set (0.00 sec)
  • 以首字母小寫的方式顯示所有同學的姓名
select concat(lcase(substring(name,1,1)),substring(name,2)) from exam_result;

數(shù)學函數(shù)

MySQL數(shù)據(jù)庫:內(nèi)置函數(shù),Mysql數(shù)據(jù)庫,數(shù)據(jù)庫,mysql

案例:文章來源地址http://www.zghlxwxcb.cn/news/detail-675135.html

  • 絕對值
mysql> select abs(-100.2);
+-------------+
| abs(-100.2) |
+-------------+
|       100.2 |
+-------------+
1 row in set (0.00 sec)
  • 向上取整
mysql> select ceiling(23.04);
+----------------+
| ceiling(23.04) |
+----------------+
|             24 |
+----------------+
1 row in set (0.00 sec)
  • 向下取整
mysql> select floor(23.7);
+-------------+
| floor(23.7) |
+-------------+
|          23 |
+-------------+
1 row in set (0.00 sec)
  • 保留2位小數(shù)位數(shù)(小數(shù)四舍五入)
mysql> select format(12.3456,2);
+-------------------+
| format(12.3456,2) |
+-------------------+
| 12.35             |
+-------------------+
1 row in set (0.00 sec)

  • 產(chǎn)生隨機數(shù)
mysql> select rand();
+--------------------+
| rand()             |
+--------------------+
| 0.3399681042320729 |
+--------------------+
1 row in set (0.00 sec)

mysql> select rand();
+--------------------+
| rand()             |
+--------------------+
| 0.5697201356009768 |
+--------------------+
1 row in set (0.00 sec)

mysql> select rand();
+------------------+
| rand()           |
+------------------+
| 0.82869639604231 |
+------------------+
1 row in set (0.00 sec)

其它函數(shù)

  • user() 查詢當前用戶
    ?
select user();
  • md5(str)對一個字符串進行md5摘要,摘要后得到一個32位字符串
mysql> select md5('admin');
+----------------------------------+
| md5('admin')                     |
+----------------------------------+
| 21232f297a57a5a743894a0e4a801fc3 |
+----------------------------------+
1 row in set (0.00 sec)
  • database()顯示當前正在使用的數(shù)據(jù)庫
mysql> select database();
+------------+
| database() |
+------------+
| my_test    |
+------------+
1 row in set (0.00 sec)
  • password()函數(shù),MySQL數(shù)據(jù)庫使用該函數(shù)對用戶加密
mysql> select password('123456');
+-------------------------------------------+
| password('123456')                        |
+-------------------------------------------+
| *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |
+-------------------------------------------+
1 row in set, 1 warning (0.02 sec)
  • ifnull(val1, val2) 如果val1為null,返回val2,否則返回val1的值
mysql> select ifnull('abc','123');
+---------------------+
| ifnull('abc','123') |
+---------------------+
| abc                 |
+---------------------+
1 row in set (0.00 sec)

mysql> select ifnull(null,'123');
+--------------------+
| ifnull(null,'123') |
+--------------------+
| 123                |
+--------------------+
1 row in set (0.00 sec)

到了這里,關(guān)于MySQL數(shù)據(jù)庫:內(nèi)置函數(shù)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權(quán),不承擔相關(guān)法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務器費用

相關(guān)文章

  • MySQL數(shù)據(jù)庫基礎(三):多表查詢,子查詢,開窗函數(shù)

    MySQL數(shù)據(jù)庫基礎(三):多表查詢,子查詢,開窗函數(shù)

    表與表之間的關(guān)系 在SQL語句中,數(shù)據(jù)表與數(shù)據(jù)表之間,如果存在關(guān)系,一般一共有3種情況: ① 一對一關(guān)系(高級) 比如有A、B兩張表,A表中的每一條數(shù)據(jù),在B表中有一條唯一的數(shù)據(jù)與之對應。 用戶表user user_id(用戶編號) 賬號username 密碼password 001 admin admin888 002 itheima

    2024年02月12日
    瀏覽(26)
  • 【⑤MySQL函數(shù)】:讓你的數(shù)據(jù)庫操作更高效(二)

    【⑤MySQL函數(shù)】:讓你的數(shù)據(jù)庫操作更高效(二)

    前言 ?歡迎來到小K的MySQL專欄,本節(jié)將為大家?guī)鞰ySQL日期時間、條件判斷、系統(tǒng)信息、加密、進制轉(zhuǎn)換和IP地址轉(zhuǎn)換函數(shù)的講解 ? 一、日期和時間函數(shù) 函數(shù) 作用 CURDATE(),CURRENT_DATE() 返回當前日期 CURTIME(),CURRENT_TIME() 返回當前時間 NOW(),CURRENT_TIMESTAMP(),LOCALTIME(), SYSDAT

    2024年02月10日
    瀏覽(17)
  • MySQL數(shù)據(jù)庫中的存儲過程以及存儲函數(shù)練習

    ?字段名? ? ?? 數(shù)據(jù)類型? ? ? ?主鍵?? ?外鍵?? ?非空 ? 唯一? ? 自增 ?? ???id? ? ? ? ? ? ?INT? ? ? ? ? ? ? ?是 ?? ? 否 ?? ? ?是? ? ? ?是? ? ? ? ? ?否 ?? name?? ?VARCHAR(50)? ?否 ?? ? 否 ?? ? ?是? ? ? ?否? ? ? ? ? ?否 ???glass ? VARCHAR(50)? ? ?否 ??

    2024年02月15日
    瀏覽(22)
  • MySQL數(shù)據(jù)庫查詢語句之組函數(shù),子查詢語句

    MySQL數(shù)據(jù)庫查詢語句之組函數(shù),子查詢語句

    以組為操作單位,一組數(shù)據(jù)得到一個結(jié)果。 在沒有手動分組的前提下,整張表默認為一組數(shù)據(jù) max(列名):獲取最大值 min(列名):獲取最小值 sum(列名):獲取總和 avg(列名):獲取平均值 count(列名):統(tǒng)計值的個數(shù) 所有組函數(shù)都會自動忽略null值 在某些情況下,我們需要根據(jù)需要

    2024年01月23日
    瀏覽(22)
  • 零基礎學MySQL(五)-- 詳細講解數(shù)據(jù)庫中的常用函數(shù)

    零基礎學MySQL(五)-- 詳細講解數(shù)據(jù)庫中的常用函數(shù)

    提供 student 表 1??count 函數(shù) count 表示返回行的總數(shù) (1)基本語法 (2)基本練習 統(tǒng)計一個班級共有多少學生? 統(tǒng)計數(shù)學成績大于 90 的學生有多少個? 統(tǒng)計總分大于 250 的人數(shù)有多少? (3)注意細節(jié) count(*) 和 count(列) 的區(qū)別: count(*) 返回滿足條件的記錄的行數(shù) count(列

    2024年01月19日
    瀏覽(25)
  • Mysql判斷某個數(shù)據(jù)庫中是否包含某個表,與pymysql工具函數(shù)

    查看某個數(shù)據(jù)庫中的全部表: 因此查看某個庫中的某個表可以使用: 在pymysql中,可以寫一個簡單的工具函數(shù),用于查詢某個數(shù)據(jù)庫中是否包含某個表: 這里的_query函數(shù)請參考博客:python使用pymysql總是超時的解決方案

    2024年02月09日
    瀏覽(95)
  • 數(shù)據(jù)庫SQL函數(shù) 根據(jù)身份證號/出生年月 精確計算年齡(Oracle/MySQL)

    問題 根據(jù)身份證號統(tǒng)計年齡(18位) Oracle 思路 (1)Substr()函數(shù)在Oracle使用中表示被劫取的字符串表達式,截取字符串的內(nèi)容。 (2)To_date()函數(shù)可以轉(zhuǎn)換不同格式的日期,通過使用to_date函數(shù)可以將字符串類型的日期轉(zhuǎn)換成date格式。 (3)Months_between()函數(shù)反悔兩個日期之間的

    2024年02月11日
    瀏覽(37)
  • 數(shù)據(jù)庫系統(tǒng)原理及MySQL應用教程實驗七存儲過程與函數(shù)的創(chuàng)建管理

    數(shù)據(jù)庫系統(tǒng)原理及MySQL應用教程實驗七存儲過程與函數(shù)的創(chuàng)建管理

    1. 理解存儲過程和函數(shù)的概念。 2. 掌握創(chuàng)建存儲過程和函數(shù)的方法。 3. 掌握執(zhí)行存儲過程和函數(shù)的方法。 4. 掌握游標的定義、使用方法。 1.驗證性實驗:某超市的食品管理的數(shù)據(jù)庫的Food表對其操作。 2.設計性試驗:學校教師管理數(shù)據(jù)庫中的teacherInfo表對其操作。 三、實驗步

    2024年02月03日
    瀏覽(23)
  • 【MySQL 】MySQL 創(chuàng)建數(shù)據(jù)庫, MySQL 刪除數(shù)據(jù)庫,MySQL 選擇數(shù)據(jù)庫

    【MySQL 】MySQL 創(chuàng)建數(shù)據(jù)庫, MySQL 刪除數(shù)據(jù)庫,MySQL 選擇數(shù)據(jù)庫

    作者簡介: 辭七七,目前大一,正在學習C/C++,Java,Python等 作者主頁: 七七的個人主頁 文章收錄專欄: 七七的閑談 歡迎大家點贊 ?? 收藏 ? 加關(guān)注哦!???? 我們可以在登陸 MySQL 服務后,使用 create 命令創(chuàng)建數(shù)據(jù)庫,語法如下: 以下命令簡單的演示了創(chuàng)建數(shù)據(jù)庫的過程,

    2024年02月13日
    瀏覽(114)
  • 【MySQL數(shù)據(jù)庫】初識MySQL數(shù)據(jù)庫、安裝MySQL

    【MySQL數(shù)據(jù)庫】初識MySQL數(shù)據(jù)庫、安裝MySQL

    在今天的數(shù)字化世界中,數(shù)據(jù)是企業(yè)和個人的重要資產(chǎn)。管理和存儲數(shù)據(jù)變得至關(guān)重要,而 MySQL 數(shù)據(jù)庫是一種備受歡迎的開源關(guān)系型數(shù)據(jù)庫管理系統(tǒng),它提供了穩(wěn)定、可靠、高性能的數(shù)據(jù)存儲解決方案。本文將介紹 MySQL 數(shù)據(jù)庫的基本概念和安裝過程,以便初學者能夠輕松上

    2024年02月08日
    瀏覽(23)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包