SQL中前置0和后置0的处理问题
程序员文章站
2022-07-05 11:37:53
在sql语句中经常遇到处理前置和后置数据的问题 1、首先使用convert转化函数对预处理的数据进行转化,CONVERT()函数可以将制定的数据类型转换为另一种数据类型 MySQL 的CAST()和CONVERT()函数可用来获取一个类型的值,并产生另一个类型的值。两者具体的语法如下: 就是CAST ......
在sql语句中经常遇到处理前置和后置数据的问题
1、首先使用convert转化函数对预处理的数据进行转化,convert()函数可以将制定的数据类型转换为另一种数据类型
mysql 的cast()和convert()函数可用来获取一个类型的值,并产生另一个类型的值。两者具体的语法如下:
cast(value as type); convert(value, type);
就是cast(xxx as 类型), convert(xxx,类型)。
可以转换的类型是有限制的。这个类型可以是以下值其中的一个:
- 二进制,同带binary前缀的效果 : binary
- 字符型,可带参数 : char()
- 日期 : date
- 时间: time
- 日期时间型 : datetime
- 浮点数 : decimal
- 整数 : signed
- 无符号整数 : unsigned
2、需要把前置或者后置的数据用一个特定的字符替代,或者用空字符代替然后去除空格,达到实现转换数据的目的。
需要用到的函数:
rtrim()函数,用于去除字符串右边多余的空格,不管有多少个空格,一次性全部清除。
ltrim()函数,用于去除字符串左边多余的空格,不管有多少个空格,一次性全部清除。
例如:数据10和00010进行匹配判断
解决方法:先把00010中所有的0转化成" "空字符,然后再去掉左边的" "空字符,最后把右边的" "空字符转化成0。
replace(ltrim(replace(convert('00010',signed),'0',' ')),' ','0')
sql判断条件:
select *
from `table`
where if( `parentid` =1, `plan_id` <10, `plan_id` >500 )
limit 0 , 30
说明:where if(条件, true执行条件, false执行条件 )
点点滴滴积累!
推荐阅读
-
(细节)My SQL中主键为0和主键自排约束的关系
-
C++中前置操作符和后置操作符的重载
-
python计算1~2008中0和1的个数
-
cpp 中NULL和nullptr和0的区别
-
php中0,空,null和false的区别【简记】
-
SQL中前置0和后置0的处理问题
-
一键将Excel中的零0值快速隐藏不仅适用于当前表和当前区域
-
Javascript中那些你不知道的事之-- false、0、null、undefined和空字符串
-
针对mysql数据库无法在表中插入中文字符的解决方案(彻底解决:java.sql.SQLException: Incorrect string value: ‘\xF0\x9F\x92\x94‘ )
-
PostgreSQL中的template0和template1库使用实战