mysql 处理文本数据_MySQL ------ 数据处理函数(文本、日期、数值)(十)
與大多數語言一樣,SQL支持利用函數來處理數據。
好處:函數一般在數據上執行,給數據的轉換和處理提供了方便。
可移植的(portable) : 能運行在多個系統上的代碼。
注意:
1、多數SQL 是可移植的,在不同的DBMS 上雖有差異,但不難處理
2、函數的可移植性不高,幾乎主要的DBMS 都有各自獨特的函數(我行你不行,你行我不行之類),而且差異還很大
3、如果決定使用函數,要寫注釋(--),函數可以有效的完成工作,利于應用程序的性能。
大多數SQL 實現支持的類型函數:
1、用于處理文本串(如刪除或填充值,轉換值為大寫或小寫)的文本函數
2、用于在數值數據上進行算數操作(如返回絕對值,進行代數運算)的數值函數
3、用于處理日期和時間值并從這些值中提取特定成份(如:返回兩個日期之差,檢查日期的有效性等)的日期和時間函數。
4、返回DBMS 正使用的特殊信息(如返回與用戶登陸信息,檢查版本細節)的系統函數。
one、文本處理函數
簡單使用:
--將名字轉換為大寫
select vend_name,Upper(vend_name) as vend_bigname from vendors order by vend_name;
soundex() 函數匹配所有發音類似的
要全部包括起來
select 字段 from 表名 where soundex(字段名) = soundex(該字段中發音類似的值);
Two、日期和時間處理函數
日期和時間采用相應的數據類型和特殊的格式存儲,以便能快速和有效的排序或過濾,并節省物理存儲空間
一般應用程序不使用用來存儲日期和時間的格式,因此日期和時間函數總是被用來讀取統計和處理這些值。
注意:MySQL 使用的日期格式,無論你什么時候指定一個日期,不管是插入、更新或使用where進行過濾,
日期的格式必須是 yyyy-mm-dd ,雖然,MySQL支持兩位數字的年份,但這是首選的(如2020-02-20)
使用的表
我們發現存儲的數據類型是 datetime 格式是 yyyy-MM-dd HH:mm:ss
而我們一般可能需要的只是日期部分,怎么辦來
有兩種方式,
一種是放在程序里取日期部分
另一種是利用函數只取日期部分
--取日期部分
select order_num,date(order_date) as onlydate from orders order by order_date;
查詢也是,如果只是想查詢日期,則要使用Date(),即使你知道相應的列只包括日期也是如此
--將日期是2005-09-01 的檢索出來
select order_num,order_date as onlydate from orders where date(order_date)= '2005-09-01' order by order_date;
時間的范圍查找
--將日期在2005-09-01 到 2005-09-30之間的 的檢索出來
select order_num,order_date as onlydate from orders where date(order_date) between '2005-09-01' and '2005-09-30' order by order_date;
支持多種查詢方式
Three、數值處理函數? : 對數值進行處理,一般用于代數、三角或幾何運算
在主要的DBMS 中數值函數是最一致最統一的函數
試一試
總結
以上是生活随笔為你收集整理的mysql 处理文本数据_MySQL ------ 数据处理函数(文本、日期、数值)(十)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 管理mysql表知识点_数据库复习提纲(
- 下一篇: mysql 查找字符位置_MySQL数据