首頁 資料庫 mysql教程 贤者时间太久了么?--MySQL继续玩_MySQL

贤者时间太久了么?--MySQL继续玩_MySQL

May 30, 2016 pm 05:10 PM
時間

1、MySQL

 

-----运算符和函数-----

 

字符函数,数值运算符,比较运算等

 

----字符函数

 

---

 

CONCAT()--字符连接

 

CONCAT_WS()--使用指定的分隔符进行字符连接

 

mysql> SELECT CONCAT('imooc','-','MySQL');

+-----------------------------+

| CONCAT('imooc','-','MySQL') |

+-----------------------------+

| imooc-MySQL |

+-----------------------------+

 

mysql> USE TEST;

Database changed

mysql> SELECT * FROM TEST;

+----+----------+

| id | username |

+----+----------+

| 1 | Tom |

| 2 | Ben |

+----+----------+

2 rows in set (0.02 sec)

 

mysql> SELECT CONCAT(id,username) AS fullname FROM test;

+----------+

| fullname |

+----------+

| 1Tom |

| 2Ben |

+----------+

 

以上是CONCAT()的实例,而CONCAT_WS()如下

 

mysql> SELECT CONCAT_WS('-',id,username) FROM test;

+----------------------------+

| CONCAT_WS('-',id,username) |

+----------------------------+

| 1-Tom |

| 2-Ben |

+----------------------------+

 

CONCAT_WS()需要至少三个参数,第一个是分隔符,后面才是需要连接的东西

 

---

 

FORMAT(),数字格式化

 

mysql> SELECT FORMAT(234234.23423,2);

+------------------------+

| FORMAT(234234.23423,2) |

+------------------------+

| 234,234.23 |

+------------------------+

 

就是标准化,当然是外国人那一套

 

---

 

LOWER()&UPPER(),大小写变换

 

---

 

LEFT()&RIGHT(),获取左右侧字符

 

需要两位参数,从哪个字段取,从第几位开始的左右侧

 

mysql> SELECT UPPER(LEFT('andy',1));

+-----------------------+

| UPPER(LEFT('andy',1)) |

+-----------------------+

| A |

+-----------------------+

 

---

 

LENGTH(),获取字符串长度。注意,空格也要算在内

 

---

 

LTRIM(),RTRIM(),TRIM(),删除前/后/前后的空格

 

TRIM还能删除其他字符

 

mysql> SELECT TRIM(LEADING '!' FROM '!!!ANDY!!');

+------------------------------------+

| TRIM(LEADING '!' FROM '!!!ANDY!!') |

+------------------------------------+

| ANDY!! |

+------------------------------------+

1 row in set (0.00 sec)

 

mysql> SELECT TRIM(BOTH '!' FROM '!!!ANDY!!');

+---------------------------------+

| TRIM(BOTH '!' FROM '!!!ANDY!!') |

+---------------------------------+

| ANDY |

+---------------------------------+

1 row in set (0.00 sec)

 

mysql> SELECT TRIM(TRAILING '!' FROM '!!!ANDY!!');

+-------------------------------------+

| TRIM(TRAILING '!' FROM '!!!ANDY!!') |

+-------------------------------------+

| !!!ANDY |

+-------------------------------------+

1 row in set (0.00 sec)

 

---

 

REPLACE()

 

mysql> SELECT REPLACE('!!ANDY!SDL!!','!','');

+--------------------------------+

| REPLACE('!!ANDY!SDL!!','!','') |

+--------------------------------+

| ANDYSDL |

+--------------------------------+

1 row in set (0.00 sec)

 

mysql> SELECT REPLACE('!!ANDY!SDL!!','!','LALAL');

+-------------------------------------+

| REPLACE('!!ANDY!SDL!!','!','LALAL') |

+-------------------------------------+

| LALALLALALANDYLALALSDLLALALLALAL |

+-------------------------------------+

1 row in set (0.00 sec)

 

可以看到,替换是比较灵活的

 

---

 

SUBSTRING()

 

mysql> SELECT SUBSTRING('MYSQL','1','2');

+----------------------------+

| SUBSTRING('MYSQL','1','2') |

+----------------------------+

| MY |

+----------------------------+

1 row in set (0.00 sec)

 

注意mysql是从1开始,不是从0开始数数

 

---

 

做匹配

 

mysql> SELECT 'mysql' LIKE 'M%';

+-------------------+

| 'mysql' LIKE 'M%' |

+-------------------+

| 1 |

+-------------------+

1 row in set (0.00 sec)

 

mysql> SELECT * FROM test WHERE username LIKE '%m%';

+----+----------+

| id | username |

+----+----------+

| 1 | Tom |

+----+----------+

 

这里,%代表任意,类似window中的*

 

_代表任意一个字符

 

----数值运算符以及函数

 

几个很通用的函数简单的介绍下

 

CEIL()-向上取整---------FLOOR()-向下取整

 

DIV()-整数除法,也就是结果只有整数

 

MOD()-取余数

 

POWER()-幂运算

 

ROUND()-四舍五入

 

TRUNCATE()-数字截取(不再四舍五入)

 

不是两位参数,就是一位参数,大家自己试试哈

 

----比较运算符与函数

 

---

 

[NOT] BETWEEN...AND...

 

mysql> SELECT 123 BETWEEN 2 AND 123123;

+--------------------------+

| 123 BETWEEN 2 AND 123123 |

+--------------------------+

| 1 |

+--------------------------+

 

---

 

[NOT] IN(),给定几个区间来做判断

 

mysql> SELECT 123 IN(123,23,12);

+-------------------+

| 123 IN(123,23,12) |

+-------------------+

| 1 |

+-------------------+

1 row in set (0.00 sec)

 

mysql> SELECT 123 IN(120,23,12);

+-------------------+

| 123 IN(120,23,12) |

+-------------------+

| 0 |

+-------------------+

 

---

 

IS [NOT] NULL,判断是空么

 

mysql> SELECT 0 IS NULL;

+-----------+

| 0 IS NULL |

+-----------+

| 0 |

+-----------+

 

常用在检查是否为空

 

mysql> SELECT * FROM test WHERE username IS NULL;

Empty set (0.00 sec)

 

----日期时间函数

 

---

 

NOW(),返回当时的日期和时间

 

CURDATE(),CURTIME()

 

---

 

DATE_ADD(),当前日期的变化

 

mysql> SELECT DATE_ADD('2012-2-23', INTERVAL 234 DAY);

+-----------------------------------------+

| DATE_ADD('2012-2-23', INTERVAL 234 DAY) |

+-----------------------------------------+

| 2012-10-14 |

+-----------------------------------------+

1 row in set (0.00 sec)

 

mysql> SELECT DATE_ADD('2012-2-23', INTERVAL -234 DAY);

+------------------------------------------+

| DATE_ADD('2012-2-23', INTERVAL -234 DAY) |

+------------------------------------------+

| 2011-07-04 |

+------------------------------------------+

1 row in set (0.00 sec)

 

---

 

DATEDIFF(),得到两个日期间的差值

 

mysql> SELECT DATEDIFF('2304-2-2','1234-3-22');

+----------------------------------+

| DATEDIFF('2304-2-2','1234-3-22') |

+----------------------------------+

| 390760 |

+----------------------------------+

1 row in set (0.02 sec)

 

---

 

DATE_FORMAT(),日期的格式化,日期的格式是可以选的,也就是说日期的格式转换

 

mysql> SELECT DATE_FORMAT('2013-2-22','%m/%d/%y');

+-------------------------------------+

| DATE_FORMAT('2013-2-22','%m/%d/%y') |

+-------------------------------------+

| 02/22/13 |

+-------------------------------------+

1 row in set (0.00 sec)

 

----信息函数

 

USER(),VERSION(),DATEBASE(),CONNECTION_ID(),LAST_INSERT_ID()

 

----聚合函数

 

只有一个返回值是他们的特点

 

AVG(),COUNT(),MAX(),MIN(),SUM()

 

直接调用可能会有错误,一般是针对数据表的字段进行的操作

 

mysql> SELECT AVG(id) FROM test;

+---------+

| AVG(id) |

+---------+

| 1.5000 |

+---------+

 

----加密函数

 

MD5(),PASSWORD()

 

mysql> SELECT MD5('HELLOWORLD');

+----------------------------------+

| MD5('HELLOWORLD') |

+----------------------------------+

| e81e26d88d62aba9ab55b632f25f117d |

+----------------------------------+

1 row in set (0.00 sec)

 

mysql> SELECT PASSWORD('HELLOWORLD');

+-------------------------------------------+

| PASSWORD('HELLOWORLD') |

+-------------------------------------------+

| *3456E7782A7F539BC823C715DB60231B0C7DE847 |

+-------------------------------------------+

1 row in set (0.00 sec)

 

一般而言,网页的编程用的都是MD5,password仅仅用于修改当前用户的密码

 

----

 

注重自带函数的熟悉、了解,灵活的调用和嵌套运用

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1664
14
CakePHP 教程
1423
52
Laravel 教程
1317
25
PHP教程
1268
29
C# 教程
1244
24
抖音10級燈牌多少錢? 10級粉絲燈牌需要幾天? 抖音10級燈牌多少錢? 10級粉絲燈牌需要幾天? Mar 11, 2024 pm 05:37 PM

在抖音平台上,許多用戶都渴望獲得等級認證,其中10級燈牌更是展示用戶在抖音上的影響力和認可度。本文將深入探討抖音10級燈牌的價格以及達到此等級所需的時間,以幫助使用者更了解此過程。一、抖音10級燈牌多少錢?抖音10級燈牌的價格會受市場波動和供需情況的影響而有所差異,一般價格在幾千元到萬元之間。這個價格主要包括燈牌本身的成本和可能的服務費用。用戶可透過抖音官方管道或第三方服務機構購買10級燈牌,但在購買時要留意選擇合法管道,以免遭遇虛假或詐欺交易。二、10級粉絲燈牌要幾天?達到10級燈牌

艾爾登法環通關需要多久 艾爾登法環通關需要多久 Mar 11, 2024 pm 12:50 PM

玩家在艾爾登法環中進行遊戲時可以體驗遊戲主線劇情,以及收集遊戲成就,有很多玩家不知道艾爾登法環通關需要多久,玩家的通關流程在30個小時。艾爾登法環通關需要多久答:30小時。 1、這個30小時的通關時長指的雖然不是高手般的速通,但也省略了許多的流程。 2.如果你想獲得更好的遊戲體驗或是體驗完整的劇情,那麼時長上肯定要花費更多的時間。 3.如果玩家是全收集大約要100-120小時。 4.如果是只走主線刷BOSS大約:50-60小時。 5.如果是想全部體驗:150小時打底。

linux 可以重置系統時間嗎 linux 可以重置系統時間嗎 Mar 13, 2023 am 10:50 AM

linux可以重置系統時間,其重置方法為:1、使用date指令查看時間;2、使用「yum install ntp」指令安裝ntp;3、透過「ntpdate -u ntp.api.bz」指令實現網路時間同步即可。

php 怎麼實現時間把時分秒去掉 php 怎麼實現時間把時分秒去掉 Mar 13, 2023 am 11:20 AM

php實作時間把時分秒去掉的方法:1、建立一個php範例檔;2、使用strtotime函數將日期時間轉換為時間戳記;3、透過date函數對日期或時間進行格式化即可去掉時分秒。

小紅書發佈作品時間怎麼設定?發布作品時間準確嗎? 小紅書發佈作品時間怎麼設定?發布作品時間準確嗎? Mar 24, 2024 pm 01:31 PM

小紅書,一個充滿生活氣息與知識分享的平台,讓越來越多的創作者在這裡暢所欲言。要想在小紅書上獲得更多的關注和點贊,除了內容品質之外,發布作品的時間也是至關重要的。那麼,如何設定小紅書發布作品的時間呢?一、小紅書發布作品時間怎麼設定? 1.了解用戶活躍時間首先,需要先明確小紅書用戶的活躍時間。通常來說,晚上8點到10點以及週末下午是用戶活躍度較高的時段。然而,這個時段也會受到受眾群體和地理等因素的影響而有所不同。因此,為了更能掌握用戶活躍時段,建議對不同族群的行為習慣進行更詳細的分析。透過了解用戶的活

為什麼我的Go程式需要更長的時間來編譯? 為什麼我的Go程式需要更長的時間來編譯? Jun 09, 2023 pm 06:00 PM

近年來,Go語言已經成為了越來越多開發者的選擇。但是,相較於其他程式語言而言,Go語言的編譯速度卻不夠快。很多開發者在編譯Go程式時都會遇到這樣的問題:為什麼我的Go程式需要更長時間來編譯?本文將會從幾個面向探討這個問題。 Go語言的編譯器架構Go語言的編譯器架構採用的是三階段設計,分別是前端、中間層、後端。前端負責將原始碼翻譯成Go語言的中間程式碼,中間層則會中

Linux 檔案時間查看技巧詳解 Linux 檔案時間查看技巧詳解 Feb 21, 2024 pm 01:15 PM

Linux檔案時間檢視技巧詳解在Linux系統中,檔案的時間資訊對於檔案管理和追蹤變更非常重要。 Linux系統透過三種主要時間屬性來記錄檔案的變更訊息,分別是存取時間(atime)、修改時間(mtime)和變更時間(ctime)。本文將詳細介紹如何查看和管理這些文件時間信息,並提供具體的程式碼範例。 1.查看文件時間資訊透過使用ls指令結合參數-l可以列出文

如何使用Python中的時間和日期模組 如何使用Python中的時間和日期模組 Oct 16, 2023 am 08:11 AM

如何使用Python中的時間和日期模組導言:在程式設計中,處理時間和日期是非常常見的任務。 Python提供了強大的時間和日期模組,使得處理時間和日期的操作變得更加簡單和方便。本文將介紹Python中的時間和日期模組,並提供具體的程式碼範例,幫助讀者更好地理解和應用它們。一、引入時間和日期模組Python內建的時間和日期模組是datetime模組,我們需要先引入該模

See all articles