MySQL命令最全详解(39个最常用命令)

云游道人 2025-02-18 772 阅读 0评论

MySQL数据库语句

1.创建数据库

create database name; 创建数据库

2.选择数据库

use databasename; 选择数据库

3.删除数据库

drop database name; 删除数据库

MySQL表语句

1.新建表

-- 新增一个User表
CREATE TABLE user(
id varchar(32) NOT NULL COMMENT 'id',
name varchar(64) DEFAULT NULL COMMENT '姓名',
create_by varchar(32) DEFAULT NULL COMMENT '创建人',
create_date datetime DEFAULT NULL COMMENT '创建时间',
update_by varchar(32) DEFAULT NULL COMMENT '更新人',
update_date datetime DEFAULT NULL COMMENT '更新时间',
status varchar(2) DEFAULT NULL COMMENT '数据状态',
PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='user表';


2.新增表字段

alter table user add COLUMN age VARCHAR(20) DEFAULT NULL COMMENT '年龄';

3.修改表字段

alter table user MODIFY COLUMN age varchar(64) COMMENT '年龄';

4.删除表字段

alter table user DROP age;

MySQL管理语句

1.连接本机数据库

mysql -uroot -p密码

2.连接到远程主机上的MYSQL

mysql -h 127.0.0.1 -uroot -p 123456

注:u与root可以不用加空格,其它也一样

3.修改mysql中root的密码

mysqladmin -u root password "newpwd";

4.添加创建用户

添加用户:

create user mikechen;

给用户权限:

grant all on *.* to 'mikechen'@'localhost' identified by 'password' ;

这里是把操作数据库的所有权限给了mikechen,并且设置密码是password。

MySQL增删改查语句

1.MySQL插入数据

insert into <表名> [( <字段名1>[,..<字段名n > ])] values ( 值1 )[, ( 值n )]

示例:

INSERT INTO study VALUES(1 , 'a' , 10);

2.MySQL删除数据

语法:

delete from 表名 [where  条件]

示例:

DELETE  FROM user WHERE id=5;

3.MySQL修改数据

语法:

update 表名 set 字段名1=值1,字段名2=值2,....[where条件]

示例:

UPDATE user SET name = mikechen  WHERE id = 1;

4.MySQL查询数据

语法:

select <字段1,字段2,...> from < 表名 > where < 表达式 >

示例:

select * from user;

MySQL索引语句

创建索引有两种方式,一种是直接利用CREATE INDEX进行创建,另外一种则是通过修改表结构来进行添加,则是利用ALTER TABLE语句。

1.使用CREATE INDEX

能够增加普通索引和UNIQUE索引两种,其格式如下:

create index index_name on table_name (column_list) ;
create unique index index_name on table_name (column_list) ;

2.使用ALTER TABLE

1.PRIMARY KEY(主键索引)
  mysql>ALTER TABLE `table_name` ADD PRIMARY KEY index_name(`column1`, `column2`) 
2.UNIQUE(唯一索引)        
    mysql>ALTER TABLE `table_name` ADD UNIQUE index_name(`column1`, `column2`) 
3.INDEX(普通索引)        
    mysql>ALTER TABLE `table_name` ADD INDEX index_name (`column1`, `column2`)
4.FULLTEXT(全文索引)        
    mysql>ALTER TABLE `table_name` ADD FULLTEXT (`column1`, `column2`)

3.查看索引

在MySQL中,要查看某个数据库表中的索引也非常简单,只需要使用以下两个命令中的任意一种即可。

-如果查看索引前,没有使用user db_name等命令指定具体的数据库,则必须加上FROM db_name
SHOW INDEX FROM table_name [FROM db_name]
--如果查看索引前,没有使用user db_name等命令指定具体的数据库,则必须加上db_name.前缀
SHOW INDEX FROM [db_name.]table_name

4.修改索引

在MySQL中并没有提供修改索引的直接指令,一般情况下,我们需要先删除掉原索引,再根据需要创建一个同名的索引,从而变相地实现修改索引操作。

-先删除
ALTER TABLE user
DROP INDEX idx_user_username;
--再以修改后的内容创建同名索引
CREATE INDEX idx_cust_name ON customers (cust_name(8));

5.删除索引

ALTER TABLE customers
DROP INDEX idx_cust_name;

MySQL查询语句

1.直接查询

语法:

select 字段 from 表名

2.条件查询

语法:

select 字段 from 表名 where 条件

3.排序查询

语法:

select 字段 from 表名 order by 字段 排序方式

示例:

select * from user order by age desc;

4.范围查询

关键字为between…and…,通常位于条件字段后面。

select * from userwhere age >=21 and age<=23;

5.SQL查询五子句

语法:

基本语法:

mysql> select */字段列表 from 数据表名称 where 子句 group by 子句 having 子句 order by 子句 limit 子句;

五子句的顺序是固定的,不能颠倒

①.where 子句
②.group by 子句
③.having 子句
④.order by 子句
⑤.limit子句

6.模糊查询

SELECT uid, name FROM staffs WHERE name LIKE 'a%';

7.集合查询

SELECT uid, name FROM staffs WHERE uid IN(1, 3, 5);

查询uid为1、3、5的用户信息。

8.分页查询

当我们查询出来的数据量太大的时候,一页展示得又太多,一般情况下都会将其分成N页,那么这时候就需要用到分页查询。

SELECT * FROM staffs LIMIT 5, 10;

9.联合查询

union联合查询作用:把多个表中的数据联合在一起进行显示。

你可以在SELECT, UPDATE 和 DELETE 语句中使用 Mysql 的 JOIN 来联合多表查询。

JOIN 按照功能大致分为如下三类:

1)INNER JOIN(内连接)

SELECT column_list
FROM t1
INNER JOIN t2 ON join_condition;

也叫内连接或等值连接,用于获取两个表中字段匹配关系的记录。

2)LEFT JOIN(左连接)

SELECT     
    t1.c1, t1.c2, t2.c1, t2.c2
FROM    
    t1        
        LEFT JOIN    
    t2 ON t1.c1 = t2.c1;

左连接:获取左表所有记录,即使右表没有对应匹配的记录。

3)RIGHT JOIN(右连接)

select *
from students as s
right join teacher as t
on s.class_id = t.class_id

与 LEFT JOIN 相反,用于获取右表所有记录,即使左表没有对应匹配的记录。

喜欢就支持以下吧
点赞 0

发表评论

快捷回复: 表情:
aoman baiyan bishi bizui cahan ciya dabing daku deyi doge fadai fanu fendou ganga guzhang haixiu hanxiao zuohengheng zhuakuang zhouma zhemo zhayanjian zaijian yun youhengheng yiwen yinxian xu xieyanxiao xiaoku xiaojiujie xia wunai wozuimei weixiao weiqu tuosai tu touxiao tiaopi shui se saorao qiudale qinqin qiaoda piezui penxue nanguo liulei liuhan lenghan leiben kun kuaikule ku koubi kelian keai jingya jingxi jingkong jie huaixiao haqian aini OK qiang quantou shengli woshou gouyin baoquan aixin bangbangtang xiaoyanger xigua hexie pijiu lanqiu juhua hecai haobang caidao baojin chi dan kulou shuai shouqiang yangtuo youling
提交
评论列表 (有 0 条评论, 772人围观)

最近发表

热门文章

最新留言

热门推荐

标签列表