zoukankan      html  css  js  c++  java
  • 回顾MySQL基础

    Mysql


    注释

    -- 注释
    # 仅mysql中也可以用这个
    

    创建数据库

    CREATE DATABASE 数据库名;
    

    使用数据库

    USE 数据库名;
    

    个人建议 操作数据库前, 先使用USE语句选择要操作的数据库 这样可以防止误操作

    数据库里面的命名尽量使用小写字母 用_分隔单词 如 table_1 information_schema 因为sql中的关键字都是用的大写

    DDL

    Data Definition Language 数据定义语言

    定义数据结构和修改数据的语言

    创建表

    -- 创建一个表 需要指定列
    CREATE TABLE 表名 (
        列名 数据类型 完整性约束 COMMENT '列备注',
        ...可以有多条 用逗号分隔 最后一句不带逗号
    ) COMMENT '表备注';
    

    数据类型

    最常用的几种

    sql中的数据类型对应java中的数据类型

    sql java
    INT Integer
    DECIMAL Double
    VARCHAR(长度) String
    DATETIME, DATE Date

    完整性约束

    主键约束

    • 一张表只有一个主键
    • 主键可以由一个或多个列组成(一般是一个列)
    • 主键的值非空(不能为null)且唯一(不能有重复值)
    • 主键作为这条数据的唯一标识
    • 一般把表中的id列设置为主键

    CRUD 增(create)删(delete)改(update)查(read) (重要)


    插入数据

    -- 插入数据
    INSERT INTO 表名(列名,列名 ...) 
    VALUES(值,值...);
    

    列和值一一对应

    列可以不用全给 个人建议全给 没有值的给NULL值

    删除数据

    -- 删除数据
    DELETE FROM 表名 WHERE 条件;
    

    删除基于条件,满足条件的数据都会被删除. 因此条件不建议省略, 省略条件会导致整张表的数据删除, 条件尽量使用唯一标识.

    修改数据

    -- 修改数据
    UPDATE 表名 SET 列名=值 , 列名=值
    WHERE  条件;
    

    修改基于条件,满足条件的数据都会被修改. 因此条件不建议省略

    查询数据

    -- 查询所有信息
    SELECT * FROM 表名;
    
    -- 完整的查询格式
    SELECT 列名 AS 别名, -- AS 可以省略
           列名
    FROM 表名
    WHERE 条件 -- WHERE 对查询后的结果过滤;
    

    复杂查询

    聚合函数

    SUM(列名) 求和
    AVG(列名) 求平均值
    MAX(列名) 求最大值
    MIN(列名) 求最小值
    COUNT(列名) 计数

    分组

    GROUP BY 列名 对查询后的结果 按某一列的值进行分组

    分组可以用来去重

    分组可以和聚合函数结合使用 求分组后的每一组的聚合后的结果

    HAVING 条件 对分组后的结果进行过滤

    排序

    ORDER BY 列名 规则, 列名 规则... 对结果按某一列排序

    默认正序 倒序需要指定规则为DESC

    SELECT 列名 AS 别名
    FROM 表名
    WHERE 条件
    GROUP BY ...
    HAVING 条件
    ORDER BY ...;
    

    去重

    DISTINCT 列名 列中去重重复值

    可以在聚合函数中用 也可以在SELECT中使用

  • 相关阅读:
    论在Repository中使用EF框架
    SQL字符串函数
    网站可用性测试及优化指南-随笔2
    对线上系统维护工作的总结与思考
    SQL 判断字段中指定字符出现的次数
    SQL SERVER 的 INFORMATION_SCHEMA 的使用
    查看SQL语句执行时间
    Bootstrap框架中的字形图标的理解
    字符串编码、Base64字符串 互转
    根据端口号查应用程序pid
  • 原文地址:https://www.cnblogs.com/yao-xi/p/14276508.html
Copyright © 2011-2022 走看看