mysql数值处理函数exp_MySQL使用函数处理数据

/*

函数处理数据的一个问题就是每个DBMS都有特定的函数,

在不同的DBMS中,各个函数的名称和语法可能极其不同

这意味着特定SQL实现编写的代码在其他视线中可能不正常

*/

-- 在MySQL中:

/* 提取字符串的组成部分 SUBSTRING()

数据类型转换 CONVERT()

取当前日期 CURDATE()

*/

#如果使用函数,要注意注释,因为不同的SQL服务器函数含义不同

-- 大多数DBMS支持的函数

/*

1.处理文本字符串(如删除或填充值,转换值为大写或小写)的文本函数

2.用于在数值数据上进行算术操作(如返回绝对值,进行代数运算)的数值函数

3.用于处理日期和时间值并从这些之中提取特定成分(如返回两个日期之差,检查日期有效性)的日期和时间函数

4.返回DBMS正使用的特殊信息(如返回用户登录信息)的系统函数

*/

-- 文本处理函数 (UPPER())

SELECT vend_name,UPPER(vend_name) AS vend_name_upcase

FROM Vendors

ORDER BY vend_name;

24062019d24c2bd6fb5af1ec092546o.png

/*

常用的文本处理函数:

LEFT()(或使用子字符串函数) 返回字符串左边的字符

LENGTH()(也使用DATALENGTH()或LEN()) 返回字符串的长度

LOWER()(Access使用LCASE()) 将字符串转换为小写

LTRIM() 去掉字符串左边的空格

RIGHT()(或使用子字符串函数) 返回字符串右边的函数

RTRIM() 去掉字符串右边的空格

SOUNDEX() 返回字符串的SOUNDEX值

UPPER()(Access使用UCASE()) 将字符串转换为大写

*/

#SOUNDEX是一个将任何文本串转换为描述其语音表示的字母数字模式的算法

/*考虑了累的发音字符和音节,使得能对字符串进行发音比较而不是字母比较*/

------------------------------

-- 对比

SELECT cust_name,cust_contact

FROM Customers

WHERE cust_contact = 'Michael GREEN';

240620196c52067a30bff8ad092546o.png

#输出结果没有值原因是信息录入的时候输入错了,联系名实际上应该是Michael Green

SELECT cust_name,cust_contact

FROM Customers

WHERE SOUNDEX(cust_contact) = SOUNDEX('Michael Green');

24062019f70acf8e487a2774092546o.png

-- 日期和时间处理函数(以特殊的格式存储,每种DBMS都有自己的特殊形式)

/* 由于应用程序一般不使用日期和时间的存储格式,所以日期和时间函数总是用来读取、统计和处理这些值。它们的可移植性最差*/

#MySQL中使用名为YEAR()的函数从日期中提取年份

SELECT order_num

FROM Orders

WHERE YEAR(order_date) = 2012;

24062019bebc0b50c64bd3d2092546o.png

-- 数值处理函数(仅处理数值数据,主要用于代数、三角或几何运算)

/*

常用数值处理函数:

ABS() 返回一个数的绝对值

COS() 返回一个角度的余弦

EXP() 返回一个数的指数值

PI() 返回圆周率

SIN() 返回一个角度的正弦

TAN() 返回一个角度的正切

*/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值