SQL快速入门(1)
- 基础知识
- 存储引擎
将MySQL中的数据存储在文件或者内存中的技术以及配套的相关功能在MySQL中被称为存储引擎。
- 使用SHOW ENGINES语句查询MySQL中支持的存储引擎;
- 主要存储引擎:InnoDB、MyISAM、MEMEORY三种存储引擎。
- 设置数据表的存储引擎:修改鼠标重点 Storage Engine。
- 数据类型
- 数字类型
技巧:
- 选择最小的可用类型;
- 对于完全是整数的,可以选择整数类型;
- 浮点类型用于可能具有小数部分的书。
数据类型 | 取值范围 | 说明 | 单位 | |
整数数据类型 | Tinyint | 符号值:-127~127,无符号值:0~255 | 最小的整数 | 1字节 |
Bit | 符号值:-127~127,无符号值:0~255 | 最小的整数 | 1字节 | |
Bool | 符号值:-127~127,无符号值:0~255 | 最小的整数 | 1字节 | |
Smallint | 符号值:-32768~32767 | 小型整数 | 2字节 | |
Mendiumint | 符号值:-2^23~2^23-1 | 中型整数 | 3字节 | |
Int | 符号值:-2^31~2^31-1 | 标准整数 | 4字节 | |
Bigint | 符号值:-2^39~2^39-1 | 大整数 | 5字节 | |
浮点数据类型 | Float | +(-)3.4E+38 | 单精度浮点数 | 8或4字节 |
Double | +(-)1.8E+308 | 双精度浮点数 | 8字节 | |
Decimal | 可变 | 一般整数 | 自定义 |
- 字符串类型
字符串类型可分为3类:
- 普通的文本字符串类型(Char和Varchar)
- 可变类型(Text和Blob)
- 特殊类型(Set和Enum)
技巧:
- 从速度方面考虑,要选择固定的列,Char类型;
- 要节省空间,使用动态的列,VarChat类型;
- 要将列中的内容限制在一种选择,Enum类型;
- 允许在一个列中有多于一个的条目,Set类型;
- 要搜索的内容不区分大小写,Text类型;
- 要搜索的内容区分大小写,Blob类型。
数据类型 | 取值范围 | 说明 | |
普通类型 | [national] | 0~255字符 | 1、固定长度为M的字符串,其中M的取值范围为0~255; |
char | 0~255字符 | char(M)类似 | |
[national] | 0~255字符 | 长度可变,其他与char(M)类似 | |
可变类型 | TinyBlob | 2^8-1 | 小Blob字段 |
TinyText | 2^8-1 | 小Text字段 | |
Blob | 2^16-1 | 常规Blob字段 | |
Text | 2^16-1 | 常规Text字段 | |
MediumBlob | 2^24-1 | 中型Blob字段 | |
MediumText | 2^24-1 | 中型Text字段 | |
LongBlob | 2^32-1 | 长Blob字段 | |
LongText | 2^32-1 | 长Text字段 | |
特殊类型 | Enum(“value1″,”value2”,…) | 2^16-1 | 该类型的列只可以容纳所有值之一或为NULL |
Set(“value1″,”value2”,…) | 64 | 该类型的列可以容纳所有值或为NULL |
- 日期和时间数据类型
数据类型 | 取值范围 | 说明 |
Date | 1000-01-01 9999-12-41 | 日期,格式YYYY-MM-DD |
Time | -838:58:59 835:59:59 | 时间,格式HH:MM:SS |
DateTime | 1000-01-01 00:00:00 | 日期和时间格式 |
TimeStamp | 1970-01-01 00:00:00 | 时间标签,在处理报告时使用,显示格式取决于M的值 |
Year | 1901-2155 | 年份,可指定两位数字和四位数字的格式 |
- 运算符
类型 | 符号 | 作用 | 类型 | 符号 | 作用 |
算数运算 | + | 加法 | 比较运算 | IN | 判断数据是否在集合内 |
算数运算 | – | 减法 | 比较运算 | NOT IN | 判断数据是否不在集合内 |
算数运算 | * | 乘法 | 比较运算 | LIKE | 判断是否匹配字符串,返回0/1 |
算数运算 | / | 除法 | 比较运算 | NOT LIKE | 判断是否不匹配字符串,返回0/1 |
算数运算 | % | 求余 | 比较运算 | RegExp | 判断是否符合正则表达,返回0/1 |
算数运算 | DIV | 除法 | 逻辑运算 | &&或AND | 与 |
算数运算 | MOD | 求余 | 逻辑运算 | ||或OR | 或 |
比较运算 | = | 等于 | 逻辑运算 | !或NOT | 非 |
比较运算 | > | 大于 | 逻辑运算 | XOR | 异或 |
比较运算 | < | 小于 | 位运算 | & |
|
比较运算 | >= | 大于等于 | 位运算 | | |
|
比较运算 | <= | 小于等于 | 位运算 | ~ |
|
比较运算 | !=或<> | 不等于 | 位运算 | ^ |
|
比较运算 | IS NULL | 判断是否为空值 | 位运算 | << |
|
比较运算 | IS NOT NULL | 判断是否不为空值 | 位运算 | >> |
|
比较运算 | Between And | 判断数据是否在取值范围 |
|
|
|