mysql表操作

插入数据:insert

为表插入所有数据: insert into table_name( column_list) values (values_list);

为表的指定列插入数值:向部分列插入数值,没有指定的列所插入数值是默认值

同时插入多条记录:insert into table_name( column_list) values (values_list), (values_list), (values_list)....;

将查询结果插入表中: insert into table_name( column_list) select (column_list) from table_name2 where (condition);

单表记录的更新:update

语法格式:update table_name set column_name1 = values1,column_name2 = values2 where (condition);

单表记录删除:delect

语法格式:delect from table_name [where <condition>];

想要删除表中所有记录:truncate table table_name;

truncate 直接删除原来的表,并重新创建一个新的表 

查询语句:select

select  select_expr[,select_expr...] [

from table_name

[where where_condition]

[group by {col_name | position} [asc | desc]...]

[having where condition]

[order by {col_name | position} [asc | desc]... ]

[limit {[offset,] row_count | row_count}]

查询所有列

select * from table_name;

查询指定记录:

select 列名1,列名2... from table_name where 查询条件;

查询结果不重复:

在select 语句中可以使用distinct 关键词指定mysql 消除重复的记录值

select distinct 列名 from 表名;

查询空值:is null

例:select * from reader where age is null;

分组查询:

对数据按照某个或多个列进行分组

[group by 列名] [having <条件表达语句>]

通常一起使用:max(),min(),sum(),avg(),count()

例:select count(*) from reader where sex="男";

select sex,count(*) from reader group by sex;

 使用having 过滤分组

[having<条件表达式>]

having 限定显示记录所需满足条件,只有满足条件的分组才能显示出来

例:select sex from reader group by sex having count(sex)>2;

结果排序:

order by 列名 [asc | desc]

单列排序:按照指定某个序列排序,默认升序

select * from reader order by age;

指定方向排序:

升序 asc 降序 desc

select * from reader order by age desc;

limit 限制查询结果数量

limit [位置偏移量] 行数

说明:第一条记录偏移为0,第二条为1,依次类推

例:显示表的前3行记录

select * from reader limit 3;

显示从第3条记录开始后的2条记录

select * from reader limit 2,2;

原文地址:https://www.cnblogs.com/wzc27229/p/11248036.html