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);

 

posted @ 2018-05-21 07:43  1367356  阅读(179)  评论(0编辑  收藏  举报