MySql 经常使用命令总结

注意事项:

sql 使用单引号来环绕文本值(大部分数据库系统也接受双引号)。若是是数值,请不要使用引号。html

1、数据库

一、建立数据库

CREATE DATABASE lesson ;

建立一个名字为lesson的数据库sql

二、删除数据库

drop database lesson ;

二:表

一、建立表

CREATE TABLE `mydb`.`it` (
      `id` INT NOT NULL,
      `name` VARCHAR(45) NULL,
      PRIMARY KEY (`id`)
 );

在名字为mydb的数据库中建立一个表,表的名字叫it.数据库

表中有两个字段 : id , name 。 其中主键为 id微信

二、删除表

DROP TABLE `mydb`.`it`;

数据库名: mydbless

表名 : itide

三、修改表的名字

RENAME TABLE student TO user ;

把student表的名字改成usercode

四、复制表

create table table2 select * from user ;

经过复制user表,来建立一个新表table2htm

三:增长数据

一、往表里插入数据

INSERT INTO `mydb`.`user` (`id`, `name`, `age`) VALUES ('2', 'lisid', '25');

mydb : 数据库名blog

user : 表名排序

id ,name , age :表明三个字段
VALUES :字段对应的数据

四:删除数据

一、条件删除(删除一行数据)

DELETE FROM user WHERE  id=1  ;

删除id = 1 的全部数据 (删除id =1 的这一行)

5、更新数据

一、更新一个字段的值

UPDATE `mydb`.`user` SET `age`='22' WHERE `id`='1';

数据名: mydb
表名 : user
字段 : age
筛选条件 : id = 1 ;

在mydb数据库,user表中,把id = 1 的这一行的 age 属性值修改成 22

二、更新多个字段的值

UPDATE `mydb`.`user` SET `name`='奶茶妹妹', `age`='18' WHERE `id`='2';

在mydb数据库,user表中,把id = 2 的这一行的 name属性值修改成 奶茶妹妹 , age 属性值修改成 22

六:查询数据

一、查询

SELECT * FROM mydb.user;

从mydb数据库中查询user表里面的全部数据

二、单属性查询

SELECT name  FROM user ;

从user表中查询全部的name属性值

三、多属性查询

SELECT name , age  FROM user ;

从user表中查询全部的name 和 age 的属性值

四、条件查询 where

一、根据 id 查询

SELECT name , age , id  FROM user where id = 2 ;

从user表中查询id等于2的全部name、age、id 的属性值,注意id的类型是整型,因此2不用加单引号

二、根据 name 查询

SELECT name , age , id  FROM user where name = 'tom' ;

从user表中查询 name 值等于‘tom’ 的全部name、age、id 的属性值,注意name的类型是字符型,‘tom’加单引号

三、逻辑查询:大于

SELECT * FROM `user` WHERE id > 5  ;

从user表中查询 id 值 大于 5 的全部name、age、id 的属性值
全部的逻辑运算符都支持: 大于 > 、 小于 < 、 大于等于 >= 、 小于等于 <= 、 等于 = 、 不等 != (或者 <>)

四、逻辑查询:BETWEEN

SELECT * FROM `user` WHERE id BETWEEN 3 AND 8  ;

user : 表名

id : 字段名

between : 操做符 做用是选取介于两个值之间的数据范围

从user表中查询 id值在3(包含3) 到 (包含8)之间的全部name、age、id 的属性值 。 也就是 id 大于等于3, 小于等于8之间。

五、逻辑查询:in

SELECT * FROM `user` WHERE age in ( 12 , 18 )  ;

user : 表名

age : 字段名

in : 操做符 做用是为查询条件规定多个值

从user表中查询出年龄为12岁和18岁的人全部信息。 至关于并集。

五、模糊查询 like

一、模糊查询:以某字符开头

SELECT * FROM student WHERE phone LIKE '1825%'

student : 表名
phone : 字段名 表明手机号

LIKE : 模糊查询

% : 表明任意一个或多个字符 , 可匹配任意类型和长度的字符。

从student表中查出以1825开头的手机号

二、模糊查询:多个条件

SELECT * FROM student WHERE phone LIKE '182%' AND `name` LIKE 'zhang%'   ;

student : 表名

phone : 字段名 表明手机号

name : 字段名 表明名字
从student表中查出以182开头的手机号而且 名字是以zhang开头的全部信息

三、模糊查询:通配符

SELECT * FROM student WHERE phone LIKE '1825110114_'

student : 表名

phone : 字段名 表明手机号

LIKE : 模糊查询

_ : 表明一个字符

从student表中查出以1825110114开头的手机号

五、模糊查询:包含

SELECT * FROM student WHERE phone LIKE '%114%' ;

student : 表名

phone : 字段名 表明手机号

LIKE : 模糊查询

% : 表明任意一个或多个字符 , 可匹配任意类型和长度的字符。
从student表中查出手机号包含114的全部信息

六、模糊查询:取消通配符

SELECT * FROM student WHERE phone LIKE '%114\%'  ;

student : 表名

phone : 字段名 表明手机号

LIKE : 模糊查询

% : 表明任意一个或多个字符 , 可匹配任意类型和长度的字符。

从student表中查出以114%结尾的手机号 , 第一个 % 表明通配符 , % 表明% 字符,没有通配符的功能

六、数量限制查询 limit

select * from user order by id limit 3 , 5 ;

从user表中查询 从3开始(包括3),数量为5 条数据。也就是三、四、五、六、7 条数据

注意5表明的是查询的数量

七、单字段排序查询 order by

order by 语句用于根据指定的列对结果集进行排序,默认按照升序对。

select * from  mydb.`user` order by age ;

mydb : 数据库名

user : 表名

age : 排序字段

从user表中查询全部的信息,查询结果按照 age 字段排序。(默认升序)

select * from  mydb.`user` order by age DESC ;

从user表中查询全部的信息,查询结果按照 age 字段降序排序。

八、多字段排序查询 order by

select * from  mydb.`user` order by age DESC , `name` ;

mydb :数据库

user :表名

age :年龄

name :名字

从user表中查询全部的信息,查询结果按照 age 降序排序。若是年龄相同,就按照name,升序排序 。

九、求总 count()

SELECT COUNT( name ) FROM `user`   ;

name : 字段名,表明名字

user : 表名

从user表中查询 name 值得数目,不计 null 值。

SELECT COUNT( * ) FROM `user` ;

查询user表中的记录数

SELECT COUNT( DISTINCT `name` ) FROM `user` ;

查询user表中name字段不一样值的数目,至关于去重。

十、求最大值 max() 和 最小值 min()

MIN 和 MAX 也可用于文本列,以得到按字母顺序排列的最高或最低值。

SELECT MAX( id ) FROM `user` ;

从user表中查询 id 字段的最大值

SELECT MIN( id ) FROM `user` ;

从user表中查询 id 字段的最小值

十一、求和 sum()

SELECT SUM( id ) FROM `user` ;

id : 字段名

user : 表名

查询user表中 id 值的和

十二、求平均值 avg()

SELECT AVG( id ) FROM `user` ;

id : 字段名

user : 表名

查询user表中 id 值的平均数

1三、显示全部数据库

SHOW DATABASES;

1四、显示全部的表

SHOW TABLES;

七:视图

一、视图的基本概念

http://www.cnblogs.com/zzwlovegfj/archive/2012/06/23/2559596.html

二、建立一个视图

CREATE VIEW myview as SELECT * FROM mydb.`user` ;

myview :视图的名字

mydb :数据库的名字

user : 表的名字

查询user表的全部数据,做为视图myview的数据

三、删除视图

drop view myview ;

myview : 视图的名字

八:子查询

一、 查询 video 表里面 status 字段为0 的前5条数据,而且按照 id 降序排列

select t.* from (select * from video where status = 0 limit 5) as t order by t.id desc ;

这里的 select * from video where status = 0 limit 5 至关于一个临时表,用别名t代替。


我的微信号:zhaoyanjun125 , 欢迎关注

相关文章
相关标签/搜索