专栏首页李智的专栏Mysql学习(基本指令、语句)

Mysql学习(基本指令、语句)

Mysql基本指令

  1. 启动mysql net start mysql
  2. 关闭mysql net stop mysql
  3. 登陆mysql mysql -uroot -p123
  4. 查看数据库 show databases;
  5. 切换数据库 use test;
  6. 查看数据库有哪些表 show tables;
  7. 查看表结构或表字段 desc user;
  8. 查看表记录 select * from user;
  9. 退出mysql终端 exit;

mysql基础篇 一. 数据库操作

  1. 创建数据库 creat database y1;
  2. 查看数据库 show databases;
  3. 切换数据库 use y1;
  4. 删除数据库 drop databse y1;

二. 表操作

  1. 查看表 show tables;
  2. 创建表 create table user1( id int, name varchar(30), pass varchar(30) );
  3. 修改表名 rename table user1 to user2;
  4. 删除表 drop table user1;
  5. 查看表结构 desc user1;
  6. 查看表记录 select * from user1;

mysql 数据库设计篇 1. 数据表概念

  1) 数值   int //int(3)与长度无关,不够3位前面补0,默认看不见     float   2) 字符串   char(n) //占用n个字节,   varchar(n) //存多少用多少   text //65535   longtext //42亿   3) 日期   date   datatime   timestamp   time   year   //建议日期类型存int 2. 数据字段类型 3. 数据字段属性   unsigned//无符号,全正数   zerofill//零填充,int(3),不够补0   auto_increment//自增   null//这一列值允许为null   not null//这一列不允许为null   default//默认值 4. 数据表的字符集   \s //查看服务器的基本信息   查看数据库字符集 show creat database test;   查看表字符集 Show creat table user;   php设置客户端和连接字符集 $sql=”set names utf8”;   [mysql]   defult-character-set=utf8   //客户端和连接字符集   [mysqld]   character-set-server =utf8   //服务器、数据库和表字符集 5. 数据表索引设置

  1) 主键索引   2) 普通索引   3) 检测sql语句; desc select * from t1 where id=3\G//加\G把表颠倒一下   //rows 1代表找id=3的人检索一行就找到了   4) 创建带索引的表; creat table t2 (   id int unsigned auto_increment,   name varchar(30),   primary key(id),   index in_named(name)   );   5) 查看表中的所有索引 show index from t2;   6) 后期维护普通索引   删除普通索引 alter table t2 drop index in_named;   增加普通索引 alter table t2 add index in_named(name); 6. 后期维护数据表字段   1) 添加字段 alter table t1 add age int;   2) 修改字段 alter table t1 modify age int not null default 20;   3) 删除字段 alter talbe t1 drop age;   4) 修改字段名 alter table t1 change name username varchar(30);   5) 重命名表 rename table t1 to mess;


SQL语句

  1. DDL//数据定义语言creat,drop,alter
  2. DML//数据操作语言insert,update,delete
  3. DQL//数据查询语言select
  4. DCL//数据控制语言grant,commit,rollback
  5. insert-增 insert into t1(username) values(‘f’);
  6. update-改 update t1 set username=’g’ where id=6; update t1 set username=’g’,age=20 where id=7;
  7. delete-删 delete from t1 where id=6; delete from t1 where id>=3 and id<=5; delete from t1 where id between 3 and 5; delete from t1 where id in (1,3,5);
  8. select-查 1) 选择特定的字段 select * from t1 where id=3; select id from t1 where id=3; 2) 给字段取别名-as select pass as p, id from user where id=3; select pass p,id from user where id=3; 3) 去列中重复值 select distinct name from user; 4) 使用where条件进行查询 select * from t1 where id=3; 5) 查询空值NULL select * from user where pass is null; 6) between ,in的使用方法 7) like使用方法(搜索like关键字) select * from user where name like ‘%a%’;//包含a 8) 使用order by对查询结果排序 select * from user order by name; select * from user order by id asc; //升序排序 select * from user order by id desc; //降序排序 9) 使用limit限制 select * from user order by id desc limit 5;//相当于limit 0,5 前五个 10) concat函数-字符串连接符 select concat(id,name) idname from use; 11) rand函数-随机排序 select * from user order by rand() limit3; 12) count统计 select count(id) tot from user; select count(*) tot from user; //快速得到数据表多少行 select count(id) from user where name=’user4’;//user4发帖数 13) sun求和 select sum(id) from user where name=’user4’; 14) avg平均数 select avg(id) from user; 15) max最大值 select max(id) from user; 16) min最小值 select min(id),max(id) from user; 17) group by分组聚合使用 select name,count(id) from mess group by name; select name,count(id) tot from mess group by name order by tot desc;//group byt必须写在order by 之前 select name,count(id) tot from mess group by name having tot>=5 order by tot desc; //group by 必须卸载having之前,having是对分组的结果进行筛选,不能用where; 18) 多表查询 普通查询-多表(优先选择) //创建表user creat table user( id int unsigned auto_increment primary key, name varchar(30), age int); //创建表post creat table post( id int unsigned auto_increment primary key, title varchar(200), content test); //链接表user和post alter table post add uid int after id; insert into user(name,age) values('user1',21); select user.name,post.title,post.content from user,post where user.id=post.uid; select user.name,count(user.id) from user,post where user.id=post.uid group by post.uid; 嵌套查询-多表 左链接查询-多表 19) 往title字段前加uid字段 alter table post add uid after id;

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 网络基础原理

    2001:0410:0000:0001:0000:0000:0000:45ff/64 压缩格式:2001:410:0:1::45ff/64(以零开头可以省...

    李智
  • Mysql进阶

    1) 内连接 select a.*,b.* from a inner join b on a.id=b.parent_i...

    李智
  • pandas数据清洗,排序,索引设置,数据选取

    df.isnull() df的空值为True df.notnull() df的非空值为True

    李智
  • Mssql高级注入笔记

    暴库特殊技巧::%5c='\' 或者把/和\ 修改%5提交 and 0<>(select count(*) from master.dbo.sysdatabas...

    赵腰静
  • 向大家汇报,我们荣获CCF科学技术奖科技进步杰出奖

    向大家汇报一下,TAPD于近日荣获“2018年CCF科学技术奖科技进步杰出奖”。 ? 颁奖晚宴现场 该奖项由中国计算机学会(CCF)授予,旨在嘉奖计算机及相...

    TAPD敏捷研发
  • 高并发的中断下半部tasklet实例解析

    最近为了解决一个技术问题,需要用到内核里中断下半部的tasklet机制,使用过程遇到了非常有趣的问题。在解决问题过程中,也逐步加深了对tasklet机制的理解。...

    Linux阅码场
  • Spring Boot中Freemarker异常处理

    在Freemarker页面中如果使用${userName},并且userName为空,那么Freemarker页面就会崩掉 需要设置默认值${userName!...

    只喝牛奶的杀手
  • 歌词显示控件的实现(上)——歌词解析

    最近打算仿网易云音乐的音乐播放器,除了网络框架、接口数据、界面效果等这些因素外,最核心的就是音乐的播放和歌词的显示。

    蜻蜓队长
  • SAP CRM user参数CRM_UI_PROFILE是在哪行ABAP代码里读取的

    Since you are doing operation in backend, so framework will use your parameter s...

    Jerry Wang
  • 「镁客·请讲」EAI科技龙军:从模块化切入,做服务机器人整体解决方案

    镁客网

扫码关注云+社区

领取腾讯云代金券