国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > MySQL > 正文

mysql常用函數的用法

2024-07-24 12:35:44
字體:
來源:轉載
供稿:網友
  這篇文章主要講解了mysql常用函數的用法,內容清晰明了,對此有興趣的小伙伴可以學習一下,相信大家閱讀完之后會有幫助。
 
  mysql函數的介紹:
  為了簡化操作,mysql提供了大量的函數給程序員使用(比如你想輸入當前時間,可以調用now()函數)
  函數可以出現的位置:插入語句的values()中,更新語句中,刪除語句中,查詢語句及其子句中。
  聚集函數:
  聚集函數用于匯集記錄(比如不想知道每條學生記錄的確切信息,只想知道學生記錄數量,可以使用count())。
  聚集函數就是用來處理“匯集數據”的,不要求了解詳細的記錄信息。
  聚集函數(aggregate function) 運行在行組上,計算和返回單個值的函數。
  實驗表數據(下面的運行數據基于這個表):
 
  create table student(
  name varchar(15),
  gender varchar(15),
  age int
  );
  insert into student values("lilei","male",18);
  insert into student values("alex","male",17);
  insert into student values("jack","male",20);
  insert into student values("john","male",19);
  insert into student values("nullpeople","male",null);
  avg(字段)函數:
  返回指定字段的數據的平均值
  avg() 通過對表中行數計數并計算指定字段的數據總和,求得該字段的平均值。
 
  avg() 函數忽略列值為 NULL 的行,如果某行指定字段為null,那么不算這一行。
  count(字段)函數:
  返回指定字段的數據的行數(記錄的數量)
  字段可以為"*",為*時代表所有記錄數,與字段數不同的時,記錄數包括某些字段為null的記錄,而字段數不包括為null的記錄。
 
  max(字段)函數:
  返回指定字段的數據的最大值
 
  如果指定字段的數據類型為字符串類型,先按字符串比較,然后返回最大值。
  max() 函數忽略列值為 null的行
  min(字段)函數:
  返回指定字段的數據的最小值
 
  如果指定字段的數據類型為字符串類型,先按字符串比較,然后返回最小值。
  min()函數忽略列值為 null的行
  sum(字段)函數:
  返回指定字段的數據之和
 
  sum()函數忽略列值為 null的行
  補充:
  聚集函數的字段如果的數據為null,則忽略值為null的記錄。
  比如avg:有5行,但是只有四行的年齡數據,計算結果只算四行的,
  但是如果不針對字段,那么會計算,比如count(x)是計算記錄數的,null值不影響結果。
  還有一些標準偏差聚集函數,這里不講述,想了解更多的可以百度。
  聚集函數在5.0+版本上還有一個選項DISTINCT,與select中類似,就是忽視同樣的字段。【不可用于count(x)】
 
  用于處理字符串的函數:
  合并字符串函數:concat(str1,str2,str3…)
  用于將多個字符串合并成一個字符串,如果傳入的值中有null,那么最終結果是null
  如果想要在多個字符串合并結果中將每個字符串都分隔一下,可以使用concat_ws(分隔符,str1,str2,str3…),如果傳入的分隔符為null,那么最終結果是null(不過這時候如果str有為null不影響結果)mysql常用函數的用法
  比較字符串大小函數:strcmp(str1,str2)
  用于比較兩個字符串的大小。左大于右時返回1,左等于右時返回0,,左小于于右時返回-1,
  strcmp類似編程語言中的比較字符串函數(依據ascll碼?),會從左到右逐個比較,直到有一個不等就返回結果,否則比較到結尾。
 
  獲取字符串字節數函數:length(str)
  用于獲取字符串字節長度(返回字節數,因此要注意字符集)
 
  獲取字符串字符數函數:char_length(str)
  用于獲取字符串長度
 
  字母大小寫轉換函數:大寫:upper(x),ucase(x);小寫lower(x),lcase(x)
  upper(x),ucase(x)用于將字母轉成大寫,x可以是單個字母也可以是字符串mysql常用函數的用法
  lower(x),lcase(x)用于將字母轉成小寫,x可以是單個字母也可以是字符串mysql常用函數的用法
  對于已經是了的,不會進行大小寫轉換。
  字符串查找函數:
  find_in_set(str1,str2)
  返回字符串str1在str2中的位置,str2包含若干個以逗號分隔的字符串(可以把str2看出一個列表,元素是多個字符串,查找結果是str1在str2這個列表中的索引位置,從1開始)
 
  field(str,str1,str2,str3…)
  與find_in_set類似,但str2由一個類似列表的字符串變成了多個字符串,返回str在str1,str2,str3…中的位置。
 
  locate(str1,str2):
  返回子串str1在字符串str2中的位置
 
  position(str1 IN str2)
  返回子串str1在字符串str2中的位置
 
  instr(str1,str2)
  返回子串str2在字符串str1中的位置【注意這里調轉了】
 
  獲取指定位置的子串:
  elt(index,str1,str2,str3…)
  返回指定index位置的字符串
 
  left(str,n)
  截取str左邊n個字符
 
  right(str,n)
  截取str右邊n個字符
 
  substring(str,index,len)
  從str的index位置截取len個字符
 
  字符串去空函數:
  ltrim(str):
  去除字符串str左邊的空格
 
  rtrim(str)
  去除字符串str右邊的空格
 
  trim()
  去除字符串str兩邊的空格
 
  字符串替換函數:
  insert(str1,index,len,str2)
  使用str2從str1的index位置替換str1的len個元素
 
  replace(str,str1,str2)
  將str中的子串str1全部替換成str2
 
  用于處理數值的函數:
  絕對值函數:abs(x)
  返回x的絕對值
  向上取整函數:ceil(x)
 
  向下取整函數:floor(x)
 
  取模函數:mod(x,y)
  返回x mod y的結果
  隨機數函數:rand()
  返回0-1內的隨機數
  如果想對某種情況都使用同一隨機值,可以使用rand(x),x相同時返回同樣的隨機結果。mysql常用函數的用法
  四舍五入函數:round(x,y)
  返回數值x帶有y為小數結果的數值(四舍五入)
 
  數值截取函數:truncate(x,y)
  返回數值x截取y位小數的結果(不四舍五入)
 
  用于處理時間日期的函數:
  獲取當前日期:curdate(),current_date()
 
  獲取當前時間:curtime(),current_time()
 
  獲取當前日期時間:now()
 
  從日期中選擇出月份數:month(date),monthname(date)
  mysql常用函數的用法
  從日期中選擇出周數:week(date)
 
  從日期中選擇出周數:year(date)
 
  從時間中選擇出小時數:hour(time)
 
  從時間中選擇出分鐘數:minute(time)
 
  從時間中選擇出今天是周幾:weekday(date),dayname(date)
 
  看完上述內容,是不是對mysql常用函數的用法有進一步的了解,如果還想學習更多內容。

(編輯:武林網)

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 金堂县| 福海县| 玉龙| 五大连池市| 安吉县| 依兰县| 无锡市| 墨江| 建湖县| 浠水县| 富民县| 鄂伦春自治旗| 三门峡市| 扶余县| 凭祥市| 通城县| 禹州市| 贵溪市| 密云县| 信宜市| 当阳市| 饶阳县| 大埔县| 岳普湖县| 洞头县| 山丹县| 仙游县| 扶余县| 新绛县| 桂东县| 库尔勒市| 乾安县| 三明市| 登封市| 襄樊市| 太谷县| 沾化县| 宁河县| 延庆县| 大化| 阳泉市|