MySQL代码块整理

来源:互联网 发布:mysql存储过程实例 编辑:程序博客网 时间:2024/06/07 04:10

表的基本操作

1.创建表

  CREATE TABLE table_name (         字段名称  数据类型  [约束]         字段名称  数据类型  [约束]          )

示例:

  CREATE TABLE student (         name  VARCHAR(50),          age INT(11)           )

2.删除表

DROP TABLE table_name;

3.修改表

  • 修改表名
ALTER TABLE  表名  RENAME 新表名;
  • 增加字段
ALTER TABLE 表名 ADD 字段 数据类型;
  • 修改字段
  ALTER TABLE 表名 MODIFY 字段 数据类型;

表数据的操作

1.插入数据

  • 指定字段插入语法:
INSERT INTO 表名(field1,field2...) VALUES(val1,val2...)
  • 批量插入查询:
INSERT INTO  表名(field1,field2...) SELECT field1, field2,....FROM  新表名

2.修改数据

语法:

UPDATE 表名 SET field1=value1,field2=value2,...WHERE 条件;

示例:

UPDATE  student SET name='张三',age='18' WHERE code='01';

3.删除数据
语法:

DELETE FROM 表名 WHERE 条件;

示例:

DELETE FROM student WHERE  name = '张三';

简单数据检索

1.指定字段的数据记录查询
语法:

SELECT field1,field2,.. FROM 表名 WHERE 条件;

示例:

SELECT  name,age FROM student;

2.查询所有数据
通配符 *
语法:

 SELECT * FROM 表名 [where 条件];

3.避免重复数据查询
使用 :DISTINCT 效率较低

示例:

SELECT DISTINCT name FROM student;

4.查询数据处理

  • 数学运算的数据结果处理:+ - * / %

示例:

SELECT price AS '人民币',price/6 AS '美元' FROM table_name;
  • 使用CONCAT对字符串进行拼接

示例:

SELECT  CONCAT('¥',price) AS '人民币', CONCAT('$',price/6) AS '美元' FROM table_name;

条件查询

1.关系运算符和逻辑运算符
关系运算符:>、 >=、 <、 <=、 !=(<>)、 =;
逻辑运算符:AND(&&)、OR(||)、NOT(!)、XOR。

示例:

SELECT * FROM student WHERE  age>=18 AND class='c1' AND code='01';

2. BETWEEN AND
一般用在对数值或者日期的区间判断条件中

示例:

SELECT *  FROM studnet WHERE age BETWEEN 16 AND 20;

3. IS NULL
NULL 和 空字符串是两个概念,使用的查询条件不尽相同

SELECT * FROM studnt WHERE name IS NULLSELECT * FROM studnt WHERE name = ' '  -- 判断空字符串

使用非空判断:

SELECT * FROM student WHERE name  IS NOT NULL

4.IN

SELECT * FROM student WHERE class IN('c1','c2');SELECT * FROM student WHERE class = 'c1' OR class = 'c2'; --替代方案

5.LIKE
模糊查询:用的较多,一般用到的是全匹配 %搜索字%,尾部匹配 搜索字%

示例:

SELECT * FROM studnet WHERE name LIKE '李_龙';SELECT * FROM studnet WHERE name LIKE '李%';SELECT * FROM studnet WHERE name LIKE '%李%';

数据排序

数据的排序方式:顺序 ASC、逆序 DESC。

示例:

SELECT * FROM studnet ORDER BY  class ASC , code DESC;

限制数据记录数量

使用 LIMIT 关键字,后面跟两个参数,第一个参数是从第几条开始,第二个是一共显示多少条记录

SELECT * FROM student ORDER BY  age ASC,code DESC LIMIT 9,3; -- 显示 page 页,每页显示 num 条记录 -- page = 2; num = 3; -- x = (page - 1) * num -- y = num

统计函数

COUNT:在实际开发中,会使用 COUNT 函数计算条件查询后的总数据量,用于计算总页数。另外用在分组聚合函数中求分组单元中的数据量。
SUM:总和
AVG:平均数
MAX:最大
MIN:最小

语法:

SELECT 分组完的字段1,分组完的字段2,FROM 表名 [WHERE 全局表的过滤条件] [GROUP BY 表字段1, 表字段2 HAVING 分组完成后的过滤条件(可以加聚合)][ORDER BY 分组完的字段1 ASC/DESC, 分组完的字段2 ASC/DESC,...]
原创粉丝点击