MySQL 必知必会10-11-常用函数

暂跳过一部分正则表达式

10 创建计算字段(函数)

使用Concat拼接字段

select CONCAT(age_guess_up,'-',age_guess_down)
from yc_customerProfileGuessInfo
ORDER BY Age_Guess_DOWN
LIMIT 1000

使用RTrim()去除字段右侧多余空格

select CONCAT(Rtrim(age_guess_up),'-',age_guess_down)

执行算术计算

select CONCAT(age_guess_up,'-',age_guess_down),age_guess_down-Age_Guess_UP as age_range
from yc_customerProfileGuessInfo
ORDER BY Age_Guess_DOWN
LIMIT 1000

算术计算结果

算术计算结果输出

补充:
1.concat, 在其它数据库中可能是| |,或是+;mysql中是concat;
2.可以省略from 语句进行计算测试,如select 2*3,直接返回6;
3.+-*/ 可直接使用,now()可返回当前日期时间;

11 使用数据处理函数

Sql 语句的通用性要大于函数,部分函数的可移植性弱——为了通用性,通常不去使用特殊实现的功能,若需使用,要做好备注。

Sql 支持的函数:

  • 用于处理文本串
  • 用于在数值数据上进行算术计算
  • 用于处理日期和时间值并从这些值中提取特定成分
  • 返回DBMS正使用的特殊信息对应的系统函数

11.1 文本处理函数

用upper()将文本转换为大写

select UPPER(TradeNick) as tnick_upcase,age_guess_down-Age_Guess_UP as age_range
from yc_customerProfileGuessInfo
ORDER BY tnick_upcase
LIMIT 1000

其它常用文本处理函数

  • Left() 返回串左边的字符
  • Length() 返回串的长度
  • Locate() 找出串的一个子串
  • Lower()
  • Ltrim()
  • Right()
  • Rtrim()
  • Soundex() 返回串的soundex值,即语音表示的值,其考虑发音字符和音节;
  • SubString()

11.2 日期和时间处理函数

一般情况下,(链接数据库的)应用程序不直接使用所存储的日期时间格式,而通常使用函数来读取、统计、处理这些存储的日期和时间,故这些函数比较重要。

日期和时间处理

日期格式用于where语句筛选

select UPPER(TradeNick) as tnick_upcase,age_guess_down-Age_Guess_UP as age_range
from yc_customerProfileGuessInfo
where NextPurchaseTime  BETWEEN '2017-11-11' and '2017-11-30'

…
where YEAR(NextPurchaseTime) = 2017 and MONTH(NextPurchaseTime) = 11

11.3 数值处理函数

主要是代数、三解或几何运算(非聚集类函数)

数值处理函数

下篇看聚集类(如sum\count等函数)、分组统计、子查询。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容