• mysql中的一些知识点


    数据库 DataBase  数据的仓库
    DDL 定义数据库对象语言 数据库,表,列,索引,存储过程等 
    DML对数据的操作 crud
    DCL 访问权限控制语言
    DQL数据库查询语言
    
    创建数据库
    create database g2071;
    使用数据库
    use g2071;
    创建表
    create table tb_user(列名1 数据类型[长度],列名2数据类型[长度],...列名 数据类型[长度])
    
    插入数据
    插入的值要与列对应 ,数据类型要一致
    insert into 表名(列名1,列名2,列名3...)values(值1,值2,值3...);
    
    删除
    delete from 表名 where 条件 单行或多行删除
    全表删除
    delete from 表名
    truncate table 表名 ,仅保留表结构,数据全部清除。注意:事务不可以回滚
    
    drop table 表名。表结构和数据一并删掉,事务不可回滚
    
    更新数据
    update 表名 set 列名=值,列2=值2 ... where 条件
    
    查询
    单行查询 
    select * from 表名 where name='' 
                                         id=2
    多行查询
    select * from 表名
    
    模糊查询 
    like
    select * from tb_user where name like '%雪%'
    第几个字符是某值,例:第二个字符是雪
    _
    select * from tb_user where name = '_雪';
    
    and or
    select * from tb_user where age >=18 and age <=25
    select * from tb_user where age =18 or age =25 
    
    聚合函数
    count:总记录数
    sum:求和
    avg:平均
    max:最大值
    min:最小值
    
    排序
    order by 
    asc 升序
    desc 倒序
    
    分组函数 一个列相同的值只出现一个
    group by 配合聚合函数使用
    
    having 分组之后再次过滤数据用的
    
    
    select from where group by having order by 
    
    约束:对数据进行检查验证
    主键:primary key auto_increment 非空且唯一
    非空:not null 不能为null
    unique:唯一约束  可以有多个null值,非空的只能有一个
    
    关联关系
    表与表之间是有关系的
    一对一 人跟身份证 
    一对多 人跟手机 人跟汽车
    多对多 订单与订单明细 学生与课程
    
    关联关系:查询的时候要加上  条件的数量是:N-1   假设有3张表 最少有2个条件
    
    DROP DATABASE g2071;
    CREATE DATABASE g2071;
    
    #学生表
    CREATE TABLE student(
    id INT PRIMARY KEY AUTO_INCREMENT,
    NAME VARCHAR(30),
    sex CHAR(3)
    )
    
    INSERT INTO student(id,NAME,sex)VALUES(1,'张三',''),(2,'李四','');
    SELECT * FROM student;
    
    #课程表
    CREATE TABLE kecheng(
    id INT PRIMARY KEY AUTO_INCREMENT,
    NAME VARCHAR(30)
    )
    INSERT INTO kecheng(id,NAME)VALUES(1,'Java'),(2,'MySQL');
    SELECT * FROM kecheng;
    
    #成绩表
    #定义两个外键
    CREATE TABLE score(
    stu_id INT,
    kecheng_id INT,
    score INT,
    FOREIGN KEY(stu_id) REFERENCES student(id),
    FOREIGN KEY(kecheng_id) REFERENCES kecheng(id)
    )
    
    INSERT INTO score(stu_id,kecheng_id,score)VALUES(1,1,90),(1,2,95),(2,1,89),(2,2,99);
    SELECT * FROM score;
    
    #关联表查询 
    SELECT s.name,k.name,sc.score FROM student s,kecheng k,score sc 
    WHERE s.id = sc.`stu_id` AND k.id = sc.`kecheng_id` AND s.id = 1

     

  • 相关阅读:
    转游戏开发做的第一款手机网游的经历和体会
    cocos2d-x 单点事件用法
    cocos2d-x编译成android 以及android开发环境一些经验分享
    apk 反编译用法 mac上apktool
    cocos2d-x 中LUA和平台之间的函数调用理解
    项目经验
    sprintf 的基本用法
    html5标签 ----------- canvas vue / html
    vue 基于element组件库实现表格下多个子级展示
    vue基于proxy实现服务器反向代理功能
  • 原文地址:https://www.cnblogs.com/xp20170618/p/14047322.html
Copyright © 2020-2023  润新知