MySQL基礎語法實踐
基本格式資料處理轉換
1、時間格式化
date_format(date,‘format’)
這裡可以參考w3cSchool 的格式,方便進行快速轉換!
這裡也把圖貼出來,方便直接預覽:
可以直接根據需求對時間進行快速轉換,如:
select concat(date_format(create_time,'%H'),' 時') as hours from table
2、獲取今天發生的訂單?
select * from order where create_time > CURRENT_DATE()
某些同學可能認為這樣不行,但是這種語法是正確的哦,CURRENT_DATE()取時間是當前日期格式,如: YYYY-MM-DD
3、concat 拼接函式的使用
某些時候,我們在業務上可能需要查出來 xxxx,但是因為需求,我們要加上 xxxx元,這個時候就可以採用concat了
select concat(money,'元') as money from table
當然,這樣的格式也是可以的。
select concat(money,'元','分') as money from table
4、group by ! 可能這個語句在 crud 當中用的非常少,在以前,如果我要把大量資料分組,可能我會採用查詢出來然後for遍歷放入map統計,但是這樣效率堪憂,所以我們可以使用 group by 來獲取統計後的效果
select sum(0) as counts,a from table group by a order by counts desc
這裡,要注意,我們統計了a出現的次數,並且以counts進行倒敘排序
5、having 作為不常用語法,但是又經常用的,直接舉例子
SELECT Websites.name, Websites.url, SUM(access_log.count) AS nums FROM (access_log INNER JOIN Websites ON access_log.site_id=Websites.id) GROUP BY Websites.name HAVING SUM(access_log.count) > 200;
根本原因是where 不能和聚合函式配合使用
6、between …and… 需要注意的就是 start 是被 between 包括的,而後面的時間是不被包括的
select * from table where create_time between '2020-11-11' and '2020-11-24'
7、字元轉換,format()、convert()、cast()
format的特點: FORMAT函式在mysql中是資料內容格式化,可以格式化資料為整數或者浮點數
select format(1111111.22333,2) as formatResult
仔細觀察,發現去掉了小數,保留兩位,但是我們發現竟然加上了 ‘,’,有時候遇到這個問題沒有仔細觀察真的很致命,所以格式化可考慮 convert() 或者 cast()
convert的特點: 可用來獲取一個型別的值,併產生另一個型別的值,用法如下
select convert(1111111.22333,type) as formatResult
type 中我們可以填入任何格式,這裡舉常用的兩種型別
decimal:
select convert(1111111.22333,decimal(12,2)) as formatResult
int:
select convert(1111111.22333,SIGNED) as formatResult
其他的以此類推,可用引數如下:
二進位制,同帶binary字首的效果 : BINARY
字元型,可帶引數 : CHAR()
日期 : DATE
時間: TIME
日期時間型 : DATETIME
浮點數 : DECIMAL
整數 : SIGNED
無符號整數 : UNSIGNED
cast(): 同convert 貼出使用引數
select cast(1111111.22333,SIGNED) as formatResult
CHAR[(N)] 字元型
DATE 日期型
DATETIME 日期和時間型
DECIMAL float型
SIGNED int
TIME 時間型
相關文章
- mysql基礎語法MySql
- MySQL:2、MySQL基礎語法MySql
- MYSQL基礎語法的使用MySql
- MySQL-基礎語法教程MySql
- Java基礎-語法基礎Java
- 基礎語法
- Linux下MySQL基礎及操作語法LinuxMySql
- 英語語法基礎
- scala基礎語法-----Spark基礎Spark
- Dart語法基礎Dart
- Vue基礎語法Vue
- Java 基礎語法Java
- CSS 基礎語法CSS
- jQuery基礎語法jQuery
- Scala基礎語法
- redis 基礎語法Redis
- jQuery 基礎語法jQuery
- Markdown 基礎語法
- JavaScript 基礎語法JavaScript
- JAVA語法基礎Java
- markdow基礎語法
- CSS基礎語法CSS
- go 基礎語法Go
- Markdown基礎語法
- JavaScript 基礎卷(一):基礎語法JavaScript
- Python基礎:語法基礎(3)Python
- 【Java基礎】--深入剖析基礎語法Java
- MySQL基礎語句MySql
- Dart語法篇之基礎語法(一)Dart
- mySQL的安裝和基礎使用及語法教程MySql
- Golang 基礎之基礎語法梳理 (三)Golang
- Drools之基礎語法
- kotlin基礎語法Kotlin
- C++基礎語法C++
- JAVA基礎語法(一)Java
- Dart的基礎語法Dart
- Python 基礎語法Python
- Java基礎語法1Java