ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

MySQL整理笔记

2021-09-17 09:06:00  阅读:219  来源: 互联网

标签:XXX .. mysql xxx1 笔记 select MySQL 整理 字段名



一、数据库的定义

        数据库(DataBase,DB),常见的数据库有:MySQL、Oracle、MS sqlServer。

        数据管理系统(DataBaeseManagement,DBMS):用于管理数据库中的数据,可以对数据库中的数据进行增删改查。

        SQL语言:结构化查询语言。

        执行步骤:DBMS -> 执行 -> SQL -> 操作 -> MySQL

二、MySQL的基础知识

①  注:端口号(port):是应用的唯一代表,通常和IP地址放在一起,IP定位计算机,端口定位应有,具有唯一性。MySQL的默认端口号为3306。

②启动、关闭mysql服务

net start mysql;   //打开mysql服务
net stop mysql;    //关闭mysql服务

  ③本地登录mysql

mysql -u*** -p***;  //-u后面为账号,-p后面为密码

mysql -uroot -p123;   //自己使用的账号为root,密码为123;

   ④mysql常用命令

exit                         //退出mysql
show databases              //查看mysql中有哪些数据库
use ***                    //使用***数据库
create database ***       //创建***数据库
show tables              //查看数据库中的表
select version()        //查看版本号
select database()      //查看当前使用的数据库

⑤导入".sql"文件

        source ...(把文件拉进命令行窗口)

 ⑥数据库中最基本的单元: 表 -- table

        任何一张表都有行和列:

                行(row):数据/记录

                列(column):字段

三、SQL语句的分类

DQL:查询语句(带有select关键字)

        select ...

DML:操作语句(对表中的数据进行增、删、改)   

        insert(增)、delete(删)、update(改)

 DDL:定义语句(操作表的结构,而非对表中的数据)

        create(新建)、drop(删除)、alter(修改)

 TCL:事务控制语句

        commit(提交)、rollback(回滚)

 DCL:数据控制语言

        grant(授权)、revoke(撤销)

 四、SQL语句的使用

        1.查询一个字段

select 字段名 from 表名;        //select和from是关键字,字段名和表名是标识符

        2.查询两个或者多个字段,用','隔开

select 字段名,字段名 from 表名;

        3.查询所有字段

select 字段名,...,字段名 form 表名;      //把所有字段名都写上
select * from 表名:             //使用*,表示所有。(但效率低,可读性差,开发不建议使用)

        4.给查询的列起别名(原表名不变,更改的只是展示出来的)

select 旧字段名 as 新字段名 from 表名;  //若新的字段名有空格,则用''标起
select 旧字段名 新字段名 from 表名:   //旧字段名后面空格然后再写新字段名也可以

         5.条件查询

select 字段名 from 表 where 条件;

                5.1条件表示

=           等于        between...and...    在..和..之间
<> or !=    不等于      is null             null
<           小于        and                 且
<=          小于等于     or                 或
>           大于         in                 包含
>=          大于等于     not                is not null 或  not in

                5.2模糊查询(like)

select xxx1 from xxx where xxx1 like '%A%';

'%A'   以A结尾    'A%'    以A开头
'%A%'  含有A      '_A%'   第二个为A(下划线_有n个就查第n+1个)

        6.排序(排序都在最后才执行)

①从低到高进行排序,升序(asc)
select xxx1 from XXX order by xxx1;
②从高到低进行排序,降序(desc)
select xxx1 from XXX order by xxx1 desc;
③多个排序
select xxx1,xxx2 from XXX order by xxx1 asc,xxx2 desc;
④根据字段位置进行排序
select xxx1,xxx2 from XXX order by 2;        //按照第2列开始排序,但是通常不用,不健壮

五、数据处理函数

  一、单行处理函数

        特点:一个输入对应一个输出

        1).常见的单行处理函数

  1. lower        转换小写
  2. upper        转换大写
  3. substr        取子串   (select substr(xx1,a,b) from XXX;)  //下标从1开始,不是从0
  4. concat        字符串拼接
  5. length         取长度  (length(xxx))
  6. trim             去空格
  7. str_to_date   将字符串转换为日期
  8. data_format  格式化日期
  9. format           设置千分位
  10. round            四舍五入
    1. select round(1234.567,0) from XXX;   1235
    2. select round(1234.567,1) from XXX;  1234.6
    3. select round(1234.567,-1) from XXX;  1230   //'-'则往左,保留十位
  11. rand()            生成随机数
  12. ifnull              将null转换成一个具体值
    1. ifnull(数据,当作哪个值)  

                如:A有null,则:

                select B,ifnull(A,0) *12 from XXX;

   13.  case ... when ... then .. when .. then .. else .. and

  二、分组函数(多行处理函数)  //自动忽略NULL

        特点:多个输入一个输出

  1. count        计数       count(*) :总行数
  2. sum          求和
  3. avg           平均值
  4. max           最大值
  5. min           最小值

  三、分组查询

select ... from ... group by ...;
关键字编写顺序:              执行顺序:
    select                        from
    from                          where
    where                         group by
    group by                      select
    order by                      order by

 having的使用:对已分完组的数据进一步过滤,与group by一起使用,不可单独使用。

        select

                xxx1,max(xx2)

        from

                XXX

         group by

                xxx1

          having

                max(xx2) > abc ;    (abc为新的条件)

条件where的优化策略:优先优化where,实在不行再使用having。 

查询语句的编写总结:

select .. from .. where .. group by .. having .. order by ..

(从左-右,顺序不可变,必须遵守)

标签:XXX,..,mysql,xxx1,笔记,select,MySQL,整理,字段名
来源: https://blog.csdn.net/qq_51595322/article/details/120341187

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有