• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

MySQL惯用类型转换函数总结_mysql

mysql 搞代码 7年前 (2018-06-08) 180次浏览 已收录 0个评论

mysql常用类型转换函数总结

MySQL函数,常用类型转换函数总结

1、Concat函数。

连接字符串常用:concat函数。如sql查询条件的like查询, AND c.name like concat(#{param.name},’%’)

将Int 转为varchar经常用 concat函数,比如concat(8,’0′) 得到字符串 ’80’ 


2、Cast函数;CONVERT函数

用法:CAST(expr AS type), CONVERT(expr,type) , CONVERT(expr USING transcoding_name).

SELECT CONVERT(‘abc’ USING utf8);


将varchar 转为Int 用 cast(str as unsigned) str为varchar类型的字符串 。

比如常用的百分比转换:

 select cast((1/3)*100 as UNSIGNED) as percent from dual;

result: 33


MySQL类型转换函数参数 : CAST(xxx AS 类型) , CONVERT(xxx,类型) 
这个类型 可以是以下值其中的 一个: 
BINARY[(N)]
CHAR[(N)]
DATE
DATETIME
DECIMAL
SIGNED [INTEGER]
TIME
UNSIGNED [INTEGER]

整数 : SIGNED 
无符号整数 : UNSIGNED
二进制,同带binary前缀的效果 : BINARY 
字符型,可带参数 : CHAR() 
日期 : DATE 
时间: TIME 
日期时间型 : DATETIME 
浮点数 : DECIMAL 

BINARY str 是CAST(str AS BINARY)的缩略形式:

mysql> SELECT BINARY ‘a’ = ‘A’;

        -> 0


3、IF函数

mysql中if是函数而不是命令

IF(expr1,expr2,expr3) 
如果 expr1 为真(expr1 <> 0 以及 expr1 <> NULL),那么 IF() 返回 expr2,否则返回 expr3。IF() 返回一个数字或字符串,这取决于它被使用的语境: 
mysql> SELECT IF(1>2,2,3);
  -> 3
mysql> SELECT IF(1<2,’yes’,’no’);
  -> ‘yes’
mysql> SELECT IF(STRCMP(‘test’,’test1′),’no’,’yes’);
  -> ‘no’

如果 expr2 或 expr3 明确地为 NULL,那么函数 IF() 的返回值类型为非 NULL 列的类型。(这在选择在 MySQL 4.0.3 中新加入)。 expr1 是作为一个整数值被计算的,这就意味着,如果测试的是一个浮点型或字符串值,就必须进行比较操作: 
mysql> SELECT IF(0.1,1,0);
  -> 0
mysql> SELECT IF(0.1<>0,1,0);
  -> 1

在上面第一种情况下,IF(0.1) 返回 0,是因为 0.1 被转换为一个整数值,返回 IF(0) 的测试结果。这可能不是你所期望的。在第二种情况下,比较测试原浮点数是否为一个非零值。比较的结果被作为整数使用。 缺省的 IF() 返回值类型 (当结果存储在临时表中时,这是非常重要的) 在 MySQL 3.23 中按下列方式确定: 表达式 返回值  
表达式(expr2)或表达式(expr3)返回值为字符串 字符串  
表达式(expr2)或表达式(expr3)返回值为浮点型值 浮点型  
表达式(expr2)或表达式(expr3)返回值为整型 整型  
如果表达式(expr2)和表达式(expr3)均是字符串,同时两个字符串均是忽略字母大小写的,那么返回值也是忽略字母大小写的(从 MySQL 3.23.51 开始)。

版权声明:本文为博主原创文章,未经博主允许不得转载。

欢迎大家阅读《MySQL惯用类型转换函数总结_mysql》,跪求各位点评,by 搞代码


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:MySQL惯用类型转换函数总结_mysql

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址