• mysql 知识


    1:从数据库中选取第20-30项

    select * from newslist limit 20,10;

    2:从数据库中选择符合条件的数据表。 并按照htmlid进行逆序排放

    select * from newslist where id=1 and pid=1 order
    by htmlid desc

    3:将符合条件的数据表逆序排放之后,选择第20,30项,也就是原数据库 的倒数第20-30项

    select * from (select * from newslist where id=1 and pid=1 order
    by htmlid desc)t1 limit 20,10;
    4: 数据库时间可以以字符串的形式插入。 也可以默认为now() date对应 年月日,time对应时候分秒

    mysql> create table datetest(time date);
    Query OK, 0 rows affected

    mysql> insert into datetest values(now());
    Query OK, 1 row affected

    mysql> select * from datetest;
    +------------+
    | time |
    +------------+
    | 2018-05-25 |
    +------------+
    1 row in set

    mysql> insert into datetest values('2018-05-04');
    Query OK, 1 row affected

    mysql> select * from datetest;
    +------------+
    | time |
    +------------+
    | 2018-05-25 |
    | 2018-05-04 |
    +------------+
    2 rows in set

    6:左外连接可以扩充表,将两个较小的表,转变为较大的表。外链接也可以查询引用信息。例如A表引用B表,那么可以通过左外连接查询A表哪些项引用了B表中某一个元组。

    7:数据库范式   https://blog.csdn.net/yangbodong22011/article/details/51619590

    第一范式1NF: 每个属性都是原子的,不可分割。使用以集合为值的属性会导致冗余存储数据的设计,进而会导致不一致。

    BCNF:   能消除所有基于函数依赖发现的冗余。

    8:增加数据冗余,可以减少表之间的连接,增加速度。 拿空间换时间。

    9:mysql 优化 配置

    https://www.cnblogs.com/thrillerz/p/3907421.html  https://www.cnblogs.com/musings/p/5913157.html

    10:  mysql 5.7特性

    https://www.cnblogs.com/mysql-dba/p/5079154.html

     5.8新特性

    http://www.mamicode.com/info-detail-2211865.html

    https://www.cnblogs.com/ivictor/category/1211693.html

    https://www.jb51.net/article/137123.htm

    11:查出平均成绩大于90的学生姓名,学号,平均成绩。    group by中的st.sid 一定要指定,因为两个表都有sid。

    create table student(
        sid int,
        name varchar(20)
    );
    
    create table sc(
        sid int,
        score int,
        course varchar(20)
    );
    
    insert into student values(1,'wangwu');
    insert into student values(2,'lisi');
    
    insert into sc values(1,89,'math');
    insert into sc values(1,95,'english');
    
    insert into sc values(2,89,'math');
    insert into sc values(2,85,'english');
    
    
    select sc.sid,avg(score),st.name from student st inner join sc sc on sc.sid=st.sid group by(st.sid) having avg(score)>90;

    结果:

    +-----+------------+--------+
    | sid | avg(score) | name   |
    +-----+------------+--------+
    |   1 | 92.0000    | wangwu |
    +-----+------------+--------+

     12:主键为什么保持唯一性

    因为主键一定是索引,所以插入的时候,如果在B+树中有相同的 ,就不让插入。

    13:  查找成绩全部大于60的同学sql 语句

    create table student(name varchar(40),subject varchar(50),grade int);
    
    insert into student values('3','语文',64);
    insert into student values('3','数学',59);
    
    insert into student values('5','语文',80);
    insert into student values('5','数学',64);
    
    insert into student values('6','语文',80);
    insert into student values('6','数学',64);
    insert into student values('6','英语',80);

    查找语句

    select name,grade from student where name in (select name from student group by name having min(grade)>60);
  • 相关阅读:
    每天写点shell——read的用法
    串口编程(一) :理论基础
    常用算法3
    Linux man C++ 库函数
    网络爬虫(一):配置selenium、pycharm(windows平台)
    C/C++ 类型内存占用详解
    git常用命令总结
    常用算法2
    本地git关联远程github
    python实现float/double的0x转化
  • 原文地址:https://www.cnblogs.com/liyafei/p/9065557.html
Copyright © 2020-2023  润新知