###一键偷懒YUM安装MySQbL###

1.安装mysql数据库

#yum install -y mariadb-server  mariadb

2.登录mysql数据库常用选项

  -h:指定服务端主机地址
  -u: 指定登入的用户名
  -p:指明密码
  -D:指明登入的数据库
  -e:连接之后直接运行SQL语句,不进入交互式模式(可以在脚本中使用)

3.mysql语言分为3大类

  DDL:数据库定义语言  create , alter , drop

  DML:数据库操作语言  insert , delete , update , select

  DCL:数据库控制语言  grant , revoke

4.数据库DDL语言

  创建库  create database zxxsql;

  删除库  drop database zxxsql;
  修改库   alter database zxxsql character set = utf8

  创建表    create table home (id int not null primary key auto_increment, name varchar(250) not null, class varchar(250) not null);
  
查看表结构    desc home;
  
修改表
      
添加字段:alter table home add gender enum('f','m');
      
删除字段:alter table home drop gender;
      
修改字段
           alter table home change name username varchar(100) after id;
           alter table home modify username varchar(100) first;
  
删除表:drop table home;
5.数据库DML语言

  <1>insert     在home表中插入3组class和username数据。

    insert into home (class,username) values ('ops', '运维开发'), ('opsdev', '运维开发'), ('开发', 'java开发');

  <2>update     修改home表数据

    update home set class = '开发部门' where id = 1;

  <3>delete  删除表数据

    delete from home where class = '开发';

  <4>select

    查询表上的所有的数据   select * from home;
    查询部分数据  select id,class from home;
    # 还可以取个别名    select id as num,class from home;

    使用where子句过滤
      # 可以使用的算数运算符:>, < , >=, <=, ==, !=
      # 可以使用连接词:and , or
      select * from home where id >= 2;
      select * from home where id <= 2 and id >1;
      select * from home where id between 1 and 2;

    # 可以使用like做模糊匹配(%:表示任意长度的字符,_:表示任意单个字符)
    select * from home where class like 'ops%';

    # 可以使用null对值进行判断
    select * from home where id is not null;
    select * from home where id is null;

    使用order指定排序(默认是asc,升序排列)
    select * from home order by id desc;

6.DCL数据库语言

  <1>grant

    #先创建用户,再授权

    create user zxx@'172.16.19.%' identified by '123456';

    grant all on *.* to zxx@'172.16.19.%';
    flush privileges;
    #
创建用户的同时给用户授权
    grant all on *.* to zxx@'172.16.19.%' identified by '123456';
    flush privileges;
    #给用户授予某些权限
    show grants for zxx@'172.16.19.%';

  <2>查看用户权限

    show grants for zxx@'172.16.19.%';

  <3>删除用户

    delete from mysql.user where user = "zxx";
    flush privileges;

7.select 查询语句详解

  -1:where子句:指明过滤条件
    可以使用的算数运算符:+, -, * ,/ ,= ,!= ,<=, >=
    between 较小的数 and 较大的数
    in (较小的数,较大的数)
    is null 或 is not null
    like模糊匹配
    例如:
    select * from home where id >= 2;
    select * from home where id <= 2 and id >1;
    select * from home where id between 1 and 2;
    select * from home where id in (1,2); # 从1和2中取值
    select * from home where class like 'ops%';
    select * from home where id is not null;
    select * from home where id is null;

  -2:group by 子句:根据指定的查询条件将查询结构进行分组,用于做聚合运算
    使用聚合函数:avg( ) , max( ) , min( ) , count( ), sum( )
    select age,gender from students group by gender;
    select avg(age),gender from students group by gender;
    select min(age), gender from students group by gender;
    select max(age), gender from students group by gender;
    select count(id), gender from students group by gender;

  -3:having子句:将分组之后的结果再次过滤
    select avg(age) as 'average_age', gender from students group by gender having average_age > 50;

  -4:order by子句 :根据指定的字段对查询结果进行排序,默认为升序,降序使用关键字desc
    select name,age from students order by age desc;

  -5:limit 子句:对查询的结果进行输出行数的限制
    select name,age from students order by age desc limit 8; # 选前8行
    select name,age from students order by age limit 4, 2; # 前4个不选,从第五行开始选2行

###总结单表查询次序##########################################################################################################################

子句的书写顺序:
where -> group by -> having -> order by -> limit

例如:                                                              
select *,avg(score) as '各班平均成绩' from students where id > 1 group by class having avg(score) > 55 order by score desc limit 3 ;  #

#############################################################################################################

my_mysql的更多相关文章

  1. mysqli_set_charset和SET NAMES优劣分析

    bool mysqli_set_charset ( mysqli $link , string $charset ) 这应该是首选的用于改变字符编码的方法,不建议使用 mysqli_query()执行 ...

  2. linux一些工具的安装(三)

    linux(vmware15   centos7)中Docker安装 一.Docker卸载 1.查看已安装的docker安装包 $yum list installed|grep docker 执行后的 ...

  3. Docker: 创建带数据的MySql container

    如果需要想要在一个装有docker的机器上启动一个MySql的container,并且整个MySql container有我想要的数据: 1. 先在已有的MySql instance上准备好数据 2. ...

  4. Docker容器学习梳理 - 应用程序容器环境部署

    关于国内Docker镜像,可以参考:Docker容器学习梳理--基础知识(2) 的Docker镜像使用. 如果我们需要在Docker环境下部署tomcat.redis.mysql.nginx.php等 ...

  5. cenos7.0 安装docker

    使用yum命令在线安装  yum install docker 安装后查看Docker版本 docker -v启动docker:systemctl start docker停止docker:syste ...

  6. PHP API中,MYSQL与MYSQLI的持久连接区别

    转载自:http://www.cnxct.com/some-differences-between-mysql-and-mysqli-of-persistent-connection/ 很久很久以前, ...

  7. Python爬虫(八)

    源码: import requests import re from my_mysql import MysqlConnect import time,random # 获取招聘详情链接 def ge ...

  8. Python爬虫(七)

    源码: import requests import re from my_mysql import MysqlConnect # 获取详情页链接和电影名称 def get_urls(page): u ...

  9. Python爬虫(六)

    源码: import requests import re from my_mysql import MysqlConnect # 获取问答信息 def get_contents(page,heade ...

随机推荐

  1. 认识一下ES6的Reflect和Proxy

    Reflect Reflect要替代Object的很多方法, 将Object对象一些明显属于言内部的方法放到了Reflect对象上,有13个方法 Reflect.apply(target, thisA ...

  2. 开源CMS比较

    PHP-CMS的发展方向:简单,易用,美观  http://www.php-cms.cn/ 看点1,服务器一键安装,鼠标点点就搞定:输入数据库参数,在服务器上点一个按钮就完成全部的安装.简单配置一下网 ...

  3. 自动为DEV GridView控件添加SizeChanged事件

    实现gdv设置的抽象对象,不用每个gdv控件都添加sizechanged事件,只需执行gdc绑定sql函数,在其中会自动添加SizeChanged事件. //2016.5.13 by sngk //根 ...

  4. p2p平台详细运营框架

    市场拓展部1.负责完成公司市场销售.市场拓展.费用控制等年度目标任务,并负责将目标责任制分解落实,确保各项工作目标得以实现.2.对营销政策.市场及同业营销动态等方面进行调研分析,及时调整营销策略和计划 ...

  5. Python--day40--datetime,socketserver,Threading模块分别是哪些模块的高层模块

  6. java 面试题之银行业务系统

    1.需求 模拟实现银行业务调度系统逻辑,具体需求如下: 银行内有6个业务窗口,1 - 4号窗口为普通窗口,5号窗口为快速窗口,6号窗口为VIP窗口. 有三种对应类型的客户:VIP客户,普通客户,快速客 ...

  7. P1014 高精度减法

    题目描述 给你两个很大的正整数A和B,你需要计算他们的差. 输入格式 输入一行包含两个正整数A和B,以一个空格分隔(A和B的位数都不超过 \(10^5\) ,但是B有可能比A大) 输出格式 输出一行包 ...

  8. 2019-6-5-WPF-隐藏系统窗口菜单

    title author date CreateTime categories WPF 隐藏系统窗口菜单 lindexi 2019-06-05 17:26:44 +0800 2019-06-05 17 ...

  9. 802.1X的体系结构

  10. 【HTML/CSS】置换元素

    置换元素: 一个内容不受CSS视觉格式化模型控制,CSS渲染模型并不考虑对此内容的渲染,且元素本身一般拥有固有尺寸(宽度,高度,宽高比)的元素,被称之为置换元素. 行内级置换和非置换元素的宽度定义 对 ...