MySQL常用语句
Posted tractors
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL常用语句相关的知识,希望对你有一定的参考价值。
一、常用语句分类:
(1)DDL:数据定义语言:用来定义数据库对象:创建库,表,列等;
(2)DML:数据操作语言:用来操作数据库中的记录;
(3)DQL:数据查询语言:用来查询数据库;
(4)DCL:数据控制语言:用来定义访问权限和安全级别;
二、DDL定义:
1、操作数据库:
1)查询所有库:show databases;
2)使用库:use 数据库名;
3)创建库:CREATE DATABASE 数据库名 CHARACTER SET utf8;
4)删除库:DROP database 库名;
2、操作表:
1)查询所有表:show tables;
2)查询表字段:DESC 表名;
3)创建表:CREATE TABLE 表名(列名1 列的类型 [约束],列名2 列的类型 [约束]);
4)删除表:DROP TABLE 表名;
5)修改表名:RENAME TABLE 原始表名 TO 要修改的表名;
6)修改表的字符集:ALTER TABLE 表名 CHARACTER SET 字符集名称;
--------------------------------------------------------------------------
7)修改表中列的字段类型:ALTER TABLE 表名 MODIFY 字段名 数据类型;
8)修改表中列的字段名:ALTER TABLE 表名 CHANGE 原始列名 新列名 数据类型;
9)添加一列:ALTER TABLE 表名 ADD 列名 数据类型;
10)删除一列:ALTER TABLE 表名 DROP 字段名;
三、DML操作:
1、插入操作:INSERT INTO 表名 (列名1,列名2) VALUES(列值1,列值2),(列值1,列值2);
2、更改操作:UPDATE 表名 SET 列名1=修改后的列值1,列名2=修改后的列值2 。。。 WHERE 列名=值;
3、删除操作:
1)DELETE FROM 表名 WHERE 列名=值;
2)TRUNCATE TABLE 表名;
//DELETE删除表中的数据,表结构还在,数据可以找回;
//truncate 直接用DROP把表删除,再创建一个同样的新表,数据不能找回,执行速度快;
四、DQL查询:
1、条件查询WHERE:后面可加运算符和关键字;
1) = != <> < <= > >=;
2)BETWEEN…AND; 值在什么范围,包含首尾;例:between 值1 and 值2;
3)IN(SET);固定的范围值;例:in(值1,值2,值3);
4)IS NULL:为空;IS NOT NULL:不为空;//性能差,用isnull()函数;
5)AND;与;
6)OR;或;
7)NOT;非;
8)+ - * % %;算术运算符;//性能极差,千万别用;
2、模糊查询LIKE:后面可加通配符;
注释:like后面需要单引号括起来;
通配符:
(1) _:任意一个字母;
(2) %:任意0-n个字母;
// %s%:包含s;
// _s%:第二个字母是s;
6.字段控制查询:
1.去重:SELECT DISTINCT 列名 FROM 表名;
2.把查询的字段结果进行运算,值必须是数值型:
(1) SELECT *,字段1+字段2 FROM 表名;
(2) 当查询结果为null时:SELECT *,字段1+IFNULL(字段2,0) FROM 表名;
3.对查询结果起别名:关键字:AS;
例: SELECT *,字段1+字段2 AS 别名 FROM 表名;
注释:(1)as可以省略;(2)不能加引号;
7.排序:
1.关键字:ORDER BY;
2.排序类型:
(1) 升序:ASC;
(2)降序:DESC
例:select * from 表名 order by 列名1 asc,列名2 desc;
8.聚合函数:
1.COUNT():统计指定列不为NULL的记录行数;select count(*/列名),count() from 表名;
2.MAX():计算最大值,如果是字符串,则使用字符串排序运算;select sum(列名) from 表名;
3.MIN():计算最小值,如果是字符串,则使用字符串排序运算;
4.SUM():计算和,如果不是数值类型,则为0;
5.AVG():计算平均数,如果不是数值类型,则为0;
//结果是一个可能不存在的数据,因此无法和表中的数据进行比对;
//聚合函数是对记录的一个压缩的过程,得到的是一个数值;
以上是关于MySQL常用语句的主要内容,如果未能解决你的问题,请参考以下文章