数据库_1: MySQL:基础

SQL基础

整数

整数字节 字节数 无符号取值范围 有符号取值范围
TINYINT 1 0~255 -128~127
SMALLINT 2 0~65535 -32768~32768
MEDIUMINT 3 0~16777215 -8388608~8388608
INT 4
INTEGER 4
BIGINT 8

浮点

整数字节 字节数 无符号取值范围 有符号取值范围
FLOAT 4
DOUBLE 8

时间与日期

整数字节 字节数 取值范围 零值
YEAR 1 0000
DATE 4 0000:00:00
TIME 3 00:00:00
DATETIME 8 0000-00-00 00:00:00
TIMESTAMP 4 00000000

字符串类型

  • CHAR和VARCHAR
  • TEXT
  • ENUM
  • SET

二进制类型

整数字节 字节数
YEBINARY(M) 字节M
VARYEBINARY(M) 可变字节M
BIT(M) M位二进制数据(64)
  • 创建数据库
CREARE DATABASE db_students.........创建db_student数据库
  • 删除数据库
DROP DATABASE db_student..........删除db_student数据库

关系数据库是由一个或者多个表构成的

  • 创建表
 //语法
 CREATE TABLE <表名> ( <列名> <数据类型> [完整性约束条件], <列名> <数据类型> [完整性约束条件], ) //例子 CREATE TABLE example ( id INT, name VARCHAR(20), sex BOOLEAN );

完整性约束

设置表的主键

  • 单子段主键:
    属性名 数据类型 PRIMARY KEY…………. stu_id INT PRIMARY KEY
    标识该属性为该表的主键,可以唯一的标识对于的元组
  • 多字段主键
    PRIMARY KEY(属性名1, 属性名2, …, 属性名n)
    主键由多个属性组合而成,属性设置完后统一设置主键

设置表的外键

  • 若字段sno是表A的属性,且依赖于表B的主键。那么表B为父表,表A为子表。
    sno为表A的外键

NOT NULL

表的非空约束

UNIQUE

表的唯一约束

修改表

ALTER TABLE student_info ADD stu_entrance DATE

删除表

DROP TABLE tbale_name

查看表

DESCRIBE 表名;
SHOW CREATE TABKE 表明

存储引擎

SHOW ENGINES;

索引

  • BTREE索引+HASH索引
  • 分类:
    1. 普通索引
    2. 唯一性索引
    3. 全文索引
    4. 单列索引
    5. 多列索引
    6. 空间索引

触发器

SQL语法

SELECT

SELECT .... FROM....;
SELECT *    FROM....;
SELECT.....FROM.....WHERE....

IN

是否在集合zhong

SELECT * FROM employee WHERE d_id IN(1001,1004);

BTWEEN AND

SELECT * FROM emplyee WHERE age BETWEEN 15 AND 25;

LIKE

SELECT * FROM emplyee WHERE name LIKE 'Aric' 

AND OR

DISTINCT

不重复

SELECT DISTINCT 属性名 SELECT DISTINCT d_id FROM employee 

排序

ORDER BY 属性名 
ORDER BY age;

分组

语句用于结合合计函数,根据一个或多个列对结果集进行分组。
单调使用只可以显示分组的一条记录

这里写代码片

limit

限制记录数

集合函数查询

COUNT 函数

  • 统计记录的条数
SELECT COUNT(*) FROM employee

SUM

  • 某字段的和
SELECT num, SUM(score) FROM grade WHERE num=1001 

连接查询

左连接

查询出表1所指的表中的所有记录,而表2所指的表中,只能查询匹配结果

SELECT num,name,employee.d_id,d_name,function FROM employee LEFT JOIN department ON employee.d_id=department.d_id

右连接

查询出表2所指的表中的所有记录,而表1所指的表中,只能查询匹配结果

算术运算符

  • 加减乘除

比较运算符

  • IS NULL / IS NOT NULL
  • BTWEEN AND
  • IN
  • LIKE
  • REGEXP

逻辑运算符

  • && AND
  • || OR

按位

MySQL函数

数学函数

字符串函数

条件判断

加密函数

你可能感兴趣的:(数据库_1: MySQL:基础)