• 数据库


    数据库基本操作

    数据库排序  desc 降序  asc 升序

    ----- 根据 “列” 从小到大排列

    --select * from 表 order by 列 asc

    ----- 根据 “列” 从大到小排列

    --select * from 表 order by 列 desc

    SELECT * FROM test1 ORDER BY  date_time DESC;

    MySQL数据库的数据类型

    MYSQL优化–explain分析sql语句执行效率

    MySQL–利用procedure analyse()函数优化表结构

    MySQL 主从复制与读写分离概念及架构分析

    数据库 分表、分区、分库

    使用Merge存储引擎实现MySQL分表

    SQL注入    防止

     MySQL 内连接、外连接、左连接、右连接、全连接

    内连接

              求交集 (用 inner join )

     外连接

              求差集(用 left join  或 right join)      求并集(用 union)【MYSQL目前不支持】

    数据库的三大范式

    数据库事务正确执行的四个基本要素

    事务是由一组 SQL 语句组成的逻辑处理单元。

      ACID: 原子性(Atomicity)、 一致性(Consistency)、 隔离性(Isolation)、持久性(Durability)。

    并发事务带来的问题

      更新丢失、脏读、不可重复读、幻读。

    如何并发访问数据库---加锁。

    锁是一种 并发控制技术,锁是用来在多个用户同时访问同一个数据的时候保护数据的。
    有 有 2  种基本的锁类型:

           共享(S)锁:若事务T在A对象上加上共享锁S,则其他事务不可修改A对象,但是,可以查询A对象、可以在A对象上加共享锁

           排他(X)锁:若事务T在A对象上加上排他锁X,则其他事务不可修改、不可查询A对象,不可在A对象上加其他的共享锁和排他锁

    产生死锁的四个必要条件:

      互斥条件、请求与保持条件、不可剥夺条件、环路等待条件。(只要系统发生了死锁,这些条件必然成立,而只要上述条件之一不满足,就不会发生死锁。)

    锁有两种机制:

      悲观锁 :从数据开始更改时就将数据锁住,直到改完成才释放

      乐观锁:准备提交所做的修改到数据库的时候才会将数据锁住

    索引:

      加快了查找速度,减慢了修改速度。

    存储引擎:

       MyIsam 与 与 InnoDB 

    涉及命令的问题

    1、truncate 与 delete 的区别:

      TRUNCATE TABLE:删除内容、 不删除 定义、释放空间。
      DELETE TABLE:删除内容、 不删除 定义,不释放空间。
      DROP TABLE:删除内容和定义,释放空间。

    2、sql 的授权语句和收回权限语句:  

      grant 权限 on 数据库对象  to 用户;

      revoke 权限 on  数据库对象 from ;

    3、增加一行数据、增加列、删除列:

      插入一行数据:

    insert into stu(stuName,stuAge,stuSex) values('张三','20','')

      增加列:

    ALTER TABLE table_name ADD column_name datatype

      删除列:

    ALTER TABLE table_name DROP COLUMN column_name

    4、select Count (*) 和 Select Count( 数 字) 以及Select Count(column)   

    count(*) 跟 count(1) 的结果一样, 返回记录的总行数,都包括对 NULL 的统计,而 count(column) 是不包括 NULL 的统计。

     5、EXISTS

     SELECT * FROM person WHERE  EXISTS (SELECT id FROM city WHERE id=1)

    条件表达式与 EXISTS 关键字之间用AND 或者 OR 进行连接

    SELECT * FROM person WHERE age>20 AND EXISTS (SELECT id FROM city WHERE id=1);

    NOT EXISTS 与 EXISTS 正好相反

    SELECT * FROM person WHERE NOT EXISTS (SELECT id FROM city WHERE id=1)

    6、HAVING 子句

    SELECT column_name, aggregate_function(column_name)
    FROM table_name
    WHERE column_name operator value
    GROUP BY column_name  //分组
    HAVING aggregate_function(column_name) operator value;

    max min

    函数部分

    7、判断表的字段值是否为空

      查询字段值为空的语法:where <字段名> is null
      查询字段值不为空的语法:where <字段名> is not null 或者 where NoT(<字段名> IS NULL)

    8、据时间进行分类计算总数

    SELECT CAST(time as DATE) AS time,COUNT(*) AS 总数   FROM tab  GROUP BY CAST(time as DATE)
    SELECT * FROM (
    SELECT 
    a1.dt,
    IFNULL(cert_num,0) cert_num,
    IFNULL(save_num,0) save_num
    FROM (
         SELECT CAST(cert_time AS DATE) dt ,COUNT(*) AS cert_num FROM ee_cert WHERE cert_time IS NOT NULL AND 1=1 GROUP BY CAST(cert_time AS DATE)
    ) a1 LEFT JOIN (
          SELECT CAST(TIME AS DATE) dt ,COUNT(*) AS save_num FROM ee_cert WHERE 1=1 GROUP BY CAST(TIME AS DATE)
     ) b1 ON a1.dt=b1.dt
    UNION ALL
        
    SELECT 
    a1.dt,
    IFNULL(cert_num,0) cert_num,
    IFNULL(save_num,0) save_num
    FROM (
     SELECT CAST(TIME AS DATE) dt ,COUNT(*) AS save_num FROM ee_cert WHERE 1=1 GROUP BY CAST(TIME AS DATE)
    
    ) a1 LEFT JOIN (
              SELECT CAST(cert_time AS DATE) dt ,COUNT(*) AS cert_num FROM ee_cert WHERE cert_time IS NOT NULL AND 1=1 GROUP BY CAST(cert_time AS DATE)
    
     ) b1 ON a1.dt=b1.

     9、SQL Date 函数

      MySQL DATE_FORMAT() 函数

        定义和用法

          DATE_FORMAT() 函数用于以不同的格式显示日期/时间数据。

        语法

    DATE_FORMAT(date,format)

         实例

    SELECT DATE_FORMAT(NOW(),'%Y-%m-%d'),NOW();

     ***************函数部分结束(待更新)****************

    通配符

      SQL 模糊查询LIKE concat用法

      concat用来拼接查询的字符串,如下代码所示
      
    SELECT * FROM deployment WHERE name LIKE concat(concat('%',#{queryMessage}),'%')

    数据库连接池:

    触发器:

    mysql触发器基本语法实际应用,图文+代码教程详细说明

    REPLACE(UUID(),"-","")    生成不带‘ - ’的UUID

  • 相关阅读:
    Flask之蓝图
    Flask之请求扩展
    Flask之flash
    Flask之session
    Flask之请求与响应
    Flask之模板系统
    Flask之路由系统
    Flask之配置文件
    Flask之快速入门
    Django项目 第一课 【nvm、node、npm安装及使用】
  • 原文地址:https://www.cnblogs.com/superslow/p/9160379.html
Copyright © 2020-2023  润新知