一:一般在sql语句中的常见函数有:字符函数、数学函数
<1.字符函数:
- length :获取参数值的字节个数
- select length()
- concat :拼接字符串
- select concat() from ()
- upper、lower :转大小写
- select upper() :转大写
- select lower() :转小写
- substr、substring :索引(从1开始)
- select substr(* ,截取位置,截取长度) 列名;
- instr :返回子串第一次出现的索引,如果找不到返回0
- select instr( * ,子串) as 列名;
- trim :去前后空格或指定字符
- select trim( * ) as 列名; (去前后空格)
- select trim (要去除的字符 from ’ * ’ ) as 列名 ;
- lpad :用指定的字符实现左填充指定长度 (如果指定长度比字符串短将会右截断)
- select lpad(’ * ’ ,指定长度, 指定填充字符) as 列名;
- rpad :用指定的字符实现右填充指定长度 (如果指定长度比字符串短将会左截断)
- select rpad(’ * ’ ,指定长度, 指定填充字符) as 列名;
- replace :替换
- select replace (’ * ’ ,被替换的字符,替换的字符) as 列名;
<2.数学函数
- round :四舍五入select round(5.656)
- ceil :向上取整,返回>= 该参数的最小整数select ceil(1.3)
- floor :向下取整,返回<= 该参数的最大整数
- truncate :截断
select truncate(516.32 ,2) - mod :取余
select mod(10,3)
二.数据类型分为:数值型、字符型、日期型
1. 数值型(整数、小数)
-
-
整数型
-
1.1 分类:
-
-
1.2 特点:
- a. 如果不设置是否有符号,默认是有符号类型
- b. 如果设置无符号,需要添加unsigned 关键字
- c. 如果插入的数值超出了整数的范围,会报 out of range 错型误
-
1.1 分类:
-
-
小数型
-
-
1.1 分类:
-
-
1.1.1 浮点型:
- a. float (M , D)
- b. double(M , D)
-
-
1.1.2 定点型:
- a. dec (M , D)
- b. decimal(M , D)
-
-
-
1.2 特点:
- 1.2.1 M: 整数部位 + 小数部位 D: 小数部位 (如果超过范围,则插入临界值)
- 1.2.2 M 和 D 可以省略。如果是定点型,则M默认为 0 ,D默认为 0 。如果是浮点型,则会根据插入的数值的精度决定精度。
-
2.字符型
-
2.1 分类
- 2.1.1 较短文本:char 、varchar
- 2.1.2 较长文本:text 、 blob(较大的二进制)
2.2 特点
3.日期型
4.其他
4.1 ENUM 类型(枚举类型):属性名 enum (" 值1" ,…)
4.2 SET 类型(集合类型):属性名 set (" 值1" ,…)
三.结语:
选择数据类型的原则是:越简单越好,能保存数值的类型越小越好。