常用的数据类型
int
数字范围
-2**32 ~ 2**32-1bigint
数字范围
-2**63 ~ 2 ** 63-1float
float(m,d), 其中m表示的是有效位, d表示小数位 有效位就是把当前的小数: 12345.12 转变成科学计数法: 1.234512 * 10**5 m最大值为7double
double(m, d), 其中m表示的是有效位, d表示小数位 m的最大值为15decimal
涉及金额的时候使用decimal.
double(m, d), 其中m表示的是有效位, d表示小数位 m的最大值为65 不会产生精度问题, 因为decimal没有精度损失的本质是因为它存的是字符串.char
表示固定长度的字符串, 长度为255个字节
中文字符占据3~4个字节
varchar
表示不定长的字符串, 长度为
0~65535个字节TEXT
长文本类型, 最大长度占据
64kbdatetime
如果当前时区发生更改, datetime类型不会发生更改, 与存入的日期保持一致.
timestamp
如果当前时区发生更改, timestamp类型会跟着时区更改.
常用的运算符
算术运算符
+-*/div
取商
SELECT 5 div 3mod
取余
SELECT 5 mod 3
比较运算符
=类似python中的 == SELECT 1 =1!=>与>=<与<=between与not betweenSELECT 2 not between 1 and 3is null与is not null用来判断当前是否有记录
逻辑运算符
- NOT
- AND
- OR
XOR(了解)
异或, 两个值一个True, 一个为False, 当前表达式才为True
常用的函数
算术运算
SUM
和
AVG
平均数
MAX和MIN
对字符串进行操作时, 类似python的排序, 是根据ascii码来排序的.COUNT
计算当前记录数 SELECT count(*) from test
字符处理
CHAR_LENGTH
SELECT CHAR_LENGTH("test")FORMAT
格式化
SELECT FORMAT(0.333333,2)LEFT和RIGHT
SELECT right("abcdefg", 2)TRIM
SELECT trim("abcdefg ")
One comment
设置默认值 CURRENT_TIMESTAMP
datetime : 如果当前时区发生更改, datetime类型不会发生更改, 与存入的日期保持一致.
timestamp : 如果当前时区发生更改, timestamp类型会跟着时区更改.