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