设为首页 收藏本站
查看: 903|回复: 0

[经验分享] mysql语句总结

[复制链接]

尚未签到

发表于 2018-9-30 10:09:10 | 显示全部楼层 |阅读模式
  一:数据库的操作.
  show databases;                  // 查看所有的数据库
  create database view;           //创建数据库。
  use view;                            //切换数据库
  show create database view;    //查看创建数据库的属性
  select database();                 ///使用函数查看当前在哪个数据库
  drop database  view;             //删除数据库
  二:表的操作。
  show tables;                             //列出数据库中所有的表
  help  create table                      //查看创建表的帮助
  create table  table1(ID int(12));    //创建表,但前提必须要有一个字段才可以创建表
  show create table table1;             //查看所创建表的属性
  desc table1;                              //查看表的结构
  alter table table1  rename table2;              //修改表名
  drop table table1;                      #删除表
  三:字段的操作
  alter table table1 add name char(10);                  //向表中添加一个字段。

  alter table table1  add sex char(10)  after>  alter table table1  add addr  char(10) first;          //添加字段到第一个
  alter table table1  change  addr address char(12);      //修改字段的名称,change可以修改字段名称以及属性,
  alter table table2 drop address;                  //删除字段
  alter table table1 modify  address int(12);           //修改字段的属性,modify只能修改字段的属性,不能修改字段的名称。
  四:记录的操作

  insert into table1  set>  insert into table2 values(2,'male','qiu',99);                                      //向表中每个字段添加数据,一一对应,不能掉字段
  insert into table2  (ID,name,linux) values(2,'qiu',99);                        //向表中每个字段添加数据,可以自己定义,有的字段可以没有值
  insert into table2  (ID,name,linux) values(2,'qiu',99),(3,'wan',88);         //向字段中添加多条记录
  select  *  from  table1;                           //查看表中的所有数据

  select>  select name,linux  from table2 order by linux ;       //指定字段按从小到大的顺序查看Linux的成绩,默认是按添加的顺序排序。
  select name,linux  from table2 order by linux desc  limit 3;(只显示前三名)//逆序查看指定字段的数据,从大到小
  select sex,count(sex)  from  table2 group by sex;        //分组和统计,统计男女生有多少个人,以sex这个字段为一组进行统计
  select sex,count(sex) from  table2;            //统计总共有几个记录
  select sum(linux) from  table2;                 //求指定字段的和
  select avg(linux) from  table2;                  //求指定字段的平均数
  select name,chiness+math+English  as total from table1;       //求每个人的分数总和    as   tiotal 是指定别名
  select name,(chiness+math+English)/3  as avg from table1;    //求每个人的平均成绩     as   avg 是指定别名
  select name,linux from table2 where linux=(select max(linux) from table2);    //子查询     select name,max(linux) from table2; 这种查询方法会出错,需要采用子查询
  delete  from  table1 where name='mage';                //删除指定字段的数据
  delete  from  table1;                                            //删除整个表的数据

  delete  from  table2 where>
  delete  from  table2 where>  delete  from  table1 where name is null;                   //删除匹配没有值的情况,其中is 可以换成
  update  table1 set name='mage'  where name is null;     //修改 字段为null的记录
  update  table1 set name='lisi'  where name='';            //修改值为空数据的记录
  update  table1 set name='lisi'  where name='mayun';   //将mayun的名字改为lisi
  注:
  +------+-------+

  | >  +------+-------+
  |  123 | mayun|
  |  123 |          |
  |  123 | NULL  |
  +------+-------+
  注:第三个ID中的123的NULL  表示空值 ,第二个ID中的123 表示空数据
  五:mysq支持模糊匹配和正则表达式查找
  模糊匹配  like
  select from table2 where name like 'ha%';    //查找表中名字以ha开头的记录,  通配符%表示所有,_表示单个字符
  select  from t1 where name like '%o';           //匹配以o结尾的记录
  正则表达式  regexp
  select from table2 where name regexp '^ha';    //采用正则表达式来查找名字以ha开头的记录

  select  from table2  where>  select  from table2  where>

  delete   from table2 where>  select * from t1 where name regexp 'o$';
  status;           //查看数据库的状态
  show  processlist;  //查看数据库中用户的连接状况,
  show variables       //用于显示mysql服务器的变量
  show variables   like '%port%';
  数据库查找时:   ;  \g   \G 的作用
  ;和\g都表示将查找的结果横向显示
  \G 的作用是将查找的结果纵向显示
  更改表之后刷新表的数据:flush  privileges;
  在mysql中如果是真的为1,如果是假的就为0


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-606605-1-1.html 上篇帖子: MySQL压测--注意事项和FAQ 下篇帖子: MySQL 高可用MMM
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表