已知原线性规划问题的可行解如为最优解 max z=x1+4x2+3x3 的最优解为X*=(0,0,4)T,最优值z*=12,写出其对偶线性规划问题的可行解如为最优解并求解。


文章目录
表的增删查改
Create(创建)
单行数据 + 全列插入
多行数据 + 指定列插入
插入否则更新
替换
Retrieve(读取)
SELECT列
全列查询
指定列查询
查询字段为表达式
查询结果指定别名
结果去重
WHERE 条件
基本比较
BETWEEN AND 条件连接
OR 条件连接
IN 条件连接
LIKE 条件匹配
WHERE 条件中使用表达式
AND 与 NOT 的使用
综合性查询
NULL的查询
结果排序
升序显示
降序排序
多字段排序
ORDER BY 使用表达式
结合 WHERE 子句 和 ORDER BY 子句
筛选分页结果
Update(更新)
更新单列
更新多列
更新值为原值基础上变更
更新全表
Delete(删除)
删除单条记录
删除整表
截断表
插入查询结果
聚合函数
group by子句的使用
CRUD : Create(创建), Retrieve(读取), Update(更新), Delete(删除)
Create(创建)
基本语法:
INSERT [INTO] table_name[(column [, column] ...)]VALUES (value_list) [, (value_list)] ...value_list: value, [, value] ...
案例:
mysql> create table students (-> id int unsigned primary key auto_increment,-> sn int not null unique comment '学号',-> name varchar(20) not null,-> email varchar(20)-> )engine=innodb default charset=utf8;
Query OK, 0 rows affected (0.03 sec)mysql> desc students;
+-------+------------------+------+-----+---------+----------------+
Field
Type
Null
Key
Default
Extra
+-------+------------------+------+-----+---------+----------------+
id
int(10) unsigned
NO
PRI
NULL
auto_increment
sn
int(11)
NO
UNI
NULL
name
varchar(20)
NO
NULL
email
varchar(20)
YES
NULL
+-------+------------------+------+-----+---------+----------------+
4 rows in set (0.00 sec)
单行数据 + 全列插入
插入两条记录,当value_list 数量和定义表的列的数量及顺序一致时,就可以省略value_list。注意,这里在插入的时候,也可以不用指定id,mysql会使用默认的值进行自增。
mysql> insert into students values (100, 1000, 'Curry', NULL);
Query OK, 1 row affected (0.01 sec)mysql> insert into students values (101, 1001, 'Durant', '3306@163.com');
Query OK, 1 row affected (0.00 sec)mysql> select * from students;
+-----+------+--------+--------------+
id
sn
name
email
+-----+------+--------+--------------+
100
1000
Curry
NULL
101
1001
Durant
3306@163.com
+-----+------+--------+--------------+
2 rows in set (0.00 sec)
多行数据 + 指定列插入
插入两条记录,value_list 数量必须和指定列数量及顺序一致
mysql> insert into students (id, sn, name) values (102, 1002, 'Kobe'), (103, 1003, 'Klay');
Query OK, 2 rows affected (0.00 sec)
Records: 2
Duplicates: 0
Warnings: 0mysql> select * from students;
+-----+------+--------+--------------+
id
sn
name
email
+-----+------+--------+--------------+
100
1000
Curry
NULL
101
1001
Durant
3306@163.com
102
1002
Kobe
NULL
103
1003
Klay
NULL
+-----+------+--------+--------------+
4 rows in set (0.00 sec)
插入否则更新
由于 主键 或者 唯一键 对应的值已经存在而导致插入失败
主键冲突:
mysql> insert into students (id, sn, name) values (100, 1004, 'Brown');
ERROR 1062 (23000): Duplicate entry '100' for key 'PRIMARY'
唯一键冲突:
mysql> insert into students (id, sn, name) values (104, 1003, 'Bryant');
ERROR 1062 (23000): Duplicate entry '1003' for key 'sn'
可以选择性的进行同步更新操作 语法:
INSERT ... ON DUPLICATE KEY UPDATEcolumn = value [, column = value] ...
mysql> insert into students (id, sn, name) values (104, 1003, 'Bryant')-> on duplicate key update id=104, name='Bryant';
Query OK, 2 rows affected (0.01 sec)mysql> select * from students;
+-----+------+--------+--------------+
id
sn
name
email
+-----+------+--------+--------------+
100
1000
Curry
NULL
101
1001
Durant
3306@163.com
102
1002
Kobe
NULL
104
1003
Bryant
NULL
+-----+------+--------+--------------+
4 rows in set (0.00 sec)
0 row affected: 表中有冲突数据,但冲突数据的值和 update 的值相等
1 row affected: 表中没有冲突数据,数据被插入
2 row affected: 表中有冲突数据,并且数据已经被更新
替换
主键 或者 唯一键 没有冲突,则直接插入;主键 或者 唯一键 如果冲突,则删除后再插入
mysql> replace into students (sn, name) values (1002, 'Mitchell');
Query OK, 2 rows affected (0.00 sec)mysql> select * from students;
+-----+------+----------+--------------+
id
sn
name
email
+-----+------+----------+--------------+
100
1000
Curry
NULL
101
1001
Durant
3306@163.com
104
1003
Bryant
NULL
105
1002
Mitchell
NULL
+-----+------+----------+--------------+
4 rows in set (0.00 sec)
1 row affected: 表中没有冲突数据,数据被插入
2 row affected: 表中有冲突数据,删除后重新插入
Retrieve(读取)
基础语法:
SELECT[DISTINCT] {*
{column [, column] ...}[FROM table_name][WHERE ...][ORDER BY column [ASC
DESC], ...]LIMIT ...
案例:
创建表结构:
mysql> create table exam_result (-> id int unsigned primary key auto_increment,-> name varchar(20) not null comment '姓名',-> chinese float default 0.0 comment '语文成绩',-> math float default 0.0 comment '数学成绩',-> english float default 0.0 comment '英语成绩'-> )engine=innodb default charset=utf8;
Query OK, 0 rows affected (0.02 sec)
插入测试数据:
mysql> insert into exam_result (name, chinese, math, english) values-> ('唐三藏', 67, 98, 56),-> ('孙悟空', 87, 78, 77),-> ('猪悟能', 88, 98, 90),-> ('曹孟德', 82, 84, 67),-> ('刘玄德', 55, 85, 45),-> ('孙权', 70, 73, 78),-> ('宋公明', 75, 65, 30);
Query OK, 7 rows affected (0.00 sec)
Records: 7
Duplicates: 0
Warnings: 0
SELECT列
全列查询
通常情况下不建议使用 * 进行全列查询
查询的列越多,意味着需要传输的数据量越大;
可能会影响到索引的使用;
mysql> select * from exam_result;
+----+-----------+---------+------+---------+
id
name
chinese
math
english
+----+-----------+---------+------+---------+
1
唐三藏
67
98
56
2
孙悟空
87
78
77
3
猪悟能
88
98
90
4
曹孟德
82
84
67
5
刘玄德
55
85
45
6
孙权
70
73
78
7
宋公明
75
65
30
+----+-----------+---------+------+---------+
7 rows in set (0.00 sec)
指定列查询
指定列的顺序不需要按定义表的顺序来
mysql> select id, name, math from exam_result;
+----+-----------+------+
id
name
math
+----+-----------+------+
1
唐三藏
98
2
孙悟空
78
3
猪悟能
98
4
曹孟德
84
5
刘玄德
85
6
孙权
73
7
宋公明
65
+----+-----------+------+
7 rows in set (0.00 sec)
查询字段为表达式
表达式不包含字段:
mysql> select id, name, 10 from exam_result;
+----+-----------+----+
id
name
10
+----+-----------+----+
1
唐三藏
10
2
孙悟空
10
3
猪悟能
10
4
曹孟德
10
5
刘玄德
10
6
孙权
10
7
宋公明
10
+----+-----------+----+
7 rows in set (0.00 sec)
表达式包含一个字段:
mysql> select id, name, math+10 from exam_result;
+----+-----------+---------+
id
name
math+10
+----+-----------+---------+
1
唐三藏
108
2
孙悟空
88
3
猪悟能
108
4
曹孟德
94
5
刘玄德
95
6
孙权
83
7
宋公明
75
+----+-----------+---------+
7 rows in set (0.00 sec)
表达式包含多个字段:
mysql> select id, name, math+chinese+english from exam_result;
+----+-----------+----------------------+
id
name
math+chinese+english
+----+-----------+----------------------+
1
唐三藏
221
2
孙悟空
242
3
猪悟能
276
4
曹孟德
233
5
刘玄德
185
6
孙权
221
7
宋公明
170
+----+-----------+----------------------+
7 rows in set (0.00 sec)
查询结果指定别名
基础语法:
ELECT column [AS] alias_name [...] FROM table_name;
mysql> select id, name, math+chinese+english total from exam_result;
+----+-----------+-------+
id
name
total
+----+-----------+-------+
1
唐三藏
221
2
孙悟空
242
3
猪悟能
276
4
曹孟德
233
5
刘玄德
185
6
孙权
221
7
宋公明
170
+----+-----------+-------+
7 rows in set (0.00 sec)
结果去重
查询结果重复:
mysql> select math from exam_result;
+------+
math
+------+
98
78
98
84
85
73
65
+------+
7 rows in set (0.00 sec)
查询结果去重:
mysql> select distinct math from exam_result;
+------+
math
+------+
98
78
84
85
73
65
+------+
6 rows in set (0.00 sec)
WHERE 条件
基本比较
英语不及格的同学及英语成绩 ( < 60 ):
mysql> select name, english from exam_result where english<60;
+-----------+---------+
name
english
+-----------+---------+
唐三藏
56
刘玄德
45
宋公明
30
+-----------+---------+
3 rows in set (0.00 sec)
BETWEEN AND 条件连接
语文成绩在 [80, 90] 分的同学及语文成绩:
使用 AND 进行条件连接
mysql> select name, chinese from exam_result where chinese>=80 and chinese<=90;
+-----------+---------+
name
chinese
+-----------+---------+
孙悟空
87
猪悟能
88
曹孟德
82
+-----------+---------+
3 rows in set (0.00 sec)
使用 BETWEEN AND 条件连接
mysql> select name, chinese from exam_result where chinese between 80 and 90;
+-----------+---------+
name
chinese
+-----------+---------+
孙悟空
87
猪悟能
88
曹孟德
82
+-----------+---------+
3 rows in set (0.00 sec)
OR 条件连接
数学成绩是 58 或者 59 或者 98 或者 99 分的同学及数学成绩:
mysql> select name, math from exam_result where math=58 or math=59 or math=98 or math=99;
+-----------+------+
name
math
+-----------+------+
唐三藏
98
猪悟能
98
+-----------+------+
2 rows in set (0.00 sec)
IN 条件连接
数学成绩是 58 或者 59 或者 98 或者 99 分的同学及数学成绩:
mysql> select name, math from exam_result where math in (58,59,98,99);
+-----------+------+
name
math
+-----------+------+
唐三藏
98
猪悟能
98
+-----------+------+
2 rows in set (0.00 sec)
LIKE 条件匹配
查找姓孙的同学:% 匹配任意多个(包括 0 个)任意字符
mysql> select name from exam_result where name like '孙%';
+-----------+
name
+-----------+
孙悟空
孙权
+-----------+
2 rows in set (0.00 sec)
查找孙某同学: _ 匹配严格的一个任意字符
mysql> select name from exam_result where name like '孙_';
+--------+
name
+--------+
孙权
+--------+
1 row in set (0.00 sec)
WHERE 条件中使用表达式
总分在 200 分以下的同学:
mysql> select name, chinese+math+english total from exam_result where total<200;
ERROR 1054 (42S22): Unknown column 'total' in 'where clause'
这里我们发现一个问题,where条件查询中不能使用指定别名,这是因为chinese+math+english这个字句比where total<200字句先执行,所以MySQL并不认识total这个别名,就会报错。
正确写法:
mysql> select name, chinese+math+english total from exam_result where chinese+math+english<200;
+-----------+-------+
name
total
+-----------+-------+
刘玄德
185
宋公明
170
+-----------+-------+
2 rows in set (0.00 sec)
AND 与 NOT 的使用
语文成绩 > 80 并且不姓孙的同学:
mysql> select name,chinese from exam_result where chinese>80 and name not like '孙%';
+-----------+---------+
name
chinese
+-----------+---------+
猪悟能
88
曹孟德
82
+-----------+---------+
2 rows in set (0.00 sec)
综合性查询
查询孙某同学,否则要求总成绩 > 200 并且 语文成绩 < 数学成绩 并且 英语成绩 > 80:
mysql> select name,chinese,math,english,chinese+math+english total from exam_result-> where (name like '孙_') or (chinese+math+english>200 and chinese<math and english>80);
+-----------+---------+------+---------+-------+
name
chinese
math
english
total
+-----------+---------+------+---------+-------+
猪悟能
88
98
90
276
孙权
70
73
78
221
+-----------+---------+------+---------+-------+
2 rows in set (0.00 sec)
NULL的查询
查询 email 号已知的同学姓名:
mysql> select name from students where email is not null;
+--------+
name
+--------+
Durant
+--------+
1 row in set (0.00 sec)
NULL 和 NULL 的比较,= 和 <=> 的区别:
mysql> select NULL=NULL, NULL=1, NULL=0;
+-----------+--------+--------+
NULL=NULL
NULL=1
NULL=0
+-----------+--------+--------+
NULL
NULL
NULL
+-----------+--------+--------+
1 row in set (0.00 sec)mysql> select NULL<=>NULL, NULL<=>1, NULL<=>0;
+-------------+----------+----------+
NULL<=>NULL
NULL<=>1
NULL<=>0
+-------------+----------+----------+
1
0
0
+-------------+----------+----------+
1 row in set (0.00 sec)
结果排序
基本语法:
-- ASC 为升序(从小到大)
-- DESC 为降序(从大到小)
-- 默认为 ASC
SELECT ... FROM table_name [WHERE ...]ORDER BY column [ASC|DESC], [...];
升序显示
查询姓名及数学成绩,按数学成绩升序显示:
mysql> select name,math from exam_result order by math;
+-----------+------+
name
math
+-----------+------+
宋公明
65
孙权
73
孙悟空
78
曹孟德
84
刘玄德
85
唐三藏
98
猪悟能
98
+-----------+------+
7 rows in set (0.00 sec)
降序排序
查询姓名 及 eamil,按 eamil排序显示:
mysql> select name,email from students order by email;
+----------+--------------+
name
email
+----------+--------------+
Curry
NULL
Bryant
NULL
Mitchell
NULL
Durant
3306@163.com
+----------+--------------+
4 rows in set (0.00 sec)
NULL 视为比任何值都小,升序出现在最上面
多字段排序
查询同学各门成绩,依次按 数学降序,英语升序,语文升序的方式显示:
mysql> select name,chinese,math,english from exam_result order by math desc, english asc, chinese asc;
+-----------+---------+------+---------+
name
chinese
math
english
+-----------+---------+------+---------+
唐三藏
67
98
56
猪悟能
88
98
90
刘玄德
55
85
45
曹孟德
82
84
67
孙悟空
87
78
77
孙权
70
73
78
宋公明
75
65
30
+-----------+---------+------+---------+
7 rows in set (0.00 sec)
多字段排序,排序优先级随书写顺序
ORDER BY 使用表达式
查询同学及总分,由高到低:
mysql> select name, chinese+math+english from exam_result order by chinese+math+english desc;
+-----------+----------------------+
name
chinese+math+english
+-----------+----------------------+
猪悟能
276
孙悟空
242
曹孟德
233
唐三藏
221
孙权
221
刘玄德
185
宋公明
170
+-----------+----------------------+
7 rows in set (0.00 sec)
ORDER BY 子句中可以使用列别名:
mysql> select name, chinese+math+english total from exam_result order by total desc;
+-----------+-------+
name
total
+-----------+-------+
猪悟能
276
孙悟空
242
曹孟德
233
唐三藏
221
孙权
221
刘玄德
185
宋公明
170
+-----------+-------+
7 rows in set (0.00 sec)
结合 WHERE 子句 和 ORDER BY 子句
查询姓孙的同学或者姓曹的同学数学成绩,结果按数学成绩由高到低显示:
mysql> select name,math from exam_result where name like '孙%' or name like '曹%' order by math desc;
+-----------+------+
name
math
+-----------+------+
曹孟德
84
孙悟空
78
孙权
73
+-----------+------+
3 rows in set (0.00 sec)
筛选分页结果
基础语法:
-- 起始下标为 0
-- 从 0 开始,筛选 n 条结果
SELECT ... FROM table_name [WHERE ...] [ORDER BY ...] LIMIT n;-- 从 s 开始,筛选 n 条结果
SELECT ... FROM table_name [WHERE ...] [ORDER BY ...] LIMIT s, n;-- 从 s 开始,筛选 n 条结果,比第二种用法更明确,建议使用
SELECT ... FROM table_name [WHERE ...] [ORDER BY ...] LIMIT n OFFSET s;
建议:对未知表进行查询时,最好加一条 LIMIT 1,避免因为表中数据过大,查询全表数据导致数据库卡死按 id 进行分页,每页 3 条记录,分别显示 第 1、2、3 页。
案例:第 1 页:
mysql> select id, name, chinese, math, english from exam_result order by id limit 3 offset 0;
+----+-----------+---------+------+---------+
id
name
chinese
math
english
+----+-----------+---------+------+---------+
1
唐三藏
67
98
56
2
孙悟空
87
78
77
3
猪悟能
88
98
90
+----+-----------+---------+------+---------+
3 rows in set (0.00 sec)
第 2 页:
mysql> select id, name, chinese, math, english from exam_result order by id limit 3 offset 3;
+----+-----------+---------+------+---------+
id
name
chinese
math
english
+----+-----------+---------+------+---------+
4
曹孟德
82
84
67
5
刘玄德
55
85
45
6
孙权
70
73
78
+----+-----------+---------+------+---------+
3 rows in set (0.00 sec)
第 3 页,如果结果不足 3 个,不会有影响:
mysql> select id, name, chinese, math, english from exam_result order by id limit 3 offset 6;
+----+-----------+---------+------+---------+
id
name
chinese
math
english
+----+-----------+---------+------+---------+
7
宋公明
75
65
30
+----+-----------+---------+------+---------+
1 row in set (0.00 sec)
Update(更新)
基本语法:
UPDATE table_name SET column = expr [, column = expr ...][WHERE ...] [ORDER BY ...] [LIMIT ...]
更新单列
将孙悟空同学的数学成绩变更为 80 分:
mysql> select name, math from exam_result where name='孙悟空';
+-----------+------+
name
math
+-----------+------+
孙悟空
78
+-----------+------+
1 row in set (0.00 sec)mysql> update exam_result set math=80 where name='孙悟空';
Query OK, 1 row affected (0.01 sec)
Rows matched: 1
Changed: 1
Warnings: 0mysql> select name, math from exam_result where name='孙悟空';
+-----------+------+
name
math
+-----------+------+
孙悟空
80
+-----------+------+
1 row in set (0.00 sec)
更新多列
将曹孟德同学的数学成绩变更为 60 分,语文成绩变更为 70 分:
mysql> select name, math, chinese from exam_result where name='曹孟德';
+-----------+------+---------+
name
math
chinese
+-----------+------+---------+
曹孟德
84
82
+-----------+------+---------+
1 row in set (0.00 sec)mysql> update exam_result set math=60, chinese=70 where name='曹孟德';
Query OK, 1 row affected (0.00 sec)
Rows matched: 1
Changed: 1
Warnings: 0mysql> select name, math, chinese from exam_result where name='曹孟德';
+-----------+------+---------+
name
math
chinese
+-----------+------+---------+
曹孟德
60
70
+-----------+------+---------+
1 row in set (0.00 sec)
更新值为原值基础上变更
将总成绩倒数前三的 3 位同学的数学成绩加上 30 分:
mysql> update exam_result set math=math+30 order by chinese+math+english limit 3;
Query OK, 3 rows affected (0.00 sec)
Rows matched: 3
Changed: 3
Warnings: 0mysql> select name, math from exam_result;
+-----------+------+
name
math
+-----------+------+
唐三藏
98
孙悟空
80
猪悟能
98
曹孟德
90
刘玄德
115
孙权
73
宋公明
95
+-----------+------+
7 rows in set (0.00 sec)
更新全表
将所有同学的语文成绩更新为原来的 2 倍:
mysql> select name, chinese from exam_result;
+-----------+---------+
name
chinese
+-----------+---------+
唐三藏
67
孙悟空
87
猪悟能
88
曹孟德
70
刘玄德
55
孙权
70
宋公明
75
+-----------+---------+
7 rows in set (0.00 sec)mysql> update exam_result set chinese=chinese*2;
Query OK, 7 rows affected (0.00 sec)
Rows matched: 7
Changed: 7
Warnings: 0mysql> select name, chinese from exam_result;
+-----------+---------+
name
chinese
+-----------+---------+
唐三藏
134
孙悟空
174
猪悟能
176
曹孟德
140
刘玄德
110
孙权
140
宋公明
150
+-----------+---------+
7 rows in set (0.00 sec)
Delete(删除)
基础语法:
DELETE FROM table_name [WHERE ...] [ORDER BY ...] [LIMIT ...]
删除单条记录
删除孙悟空同学的考试成绩:
mysql> select * from exam_result where name='孙悟空';
+----+-----------+---------+------+---------+
id
name
chinese
math
english
+----+-----------+---------+------+---------+
2
孙悟空
174
80
77
+----+-----------+---------+------+---------+
1 row in set (0.00 sec)mysql> delete from exam_result where name='孙悟空';
Query OK, 1 row affected (0.00 sec)mysql> select * from exam_result where name='孙悟空';
Empty set (0.00 sec)
删除整表
注意:删除整表操作要慎用!
准备测试表:
mysql> create table for_delete (-> id int unsigned primary key auto_increment,-> name varchar(20)-> )engine=innodb default charset=utf8;
Query OK, 0 rows affected (0.02 sec)
插入测试数据:
mysql> insert into for_delete (name) values ('a'), ('b'), ('c');
Query OK, 3 rows affected (0.00 sec)
Records: 3
Duplicates: 0
Warnings: 0mysql> select * from for_delete;
+----+------+
id
name
+----+------+
1
a
2
b
3
c
+----+------+
3 rows in set (0.00 sec)
删除整表数据:
mysql> delete from for_delete;
Query OK, 3 rows affected (0.00 sec)mysql> select * from for_delete;
Empty set (0.00 sec)
再插入一条数据,自增 id 在原值上增长:
mysql> insert into for_delete (name) values ('d');
Query OK, 1 row affected (0.00 sec)mysql> select * from for_delete;
+----+------+
id
name
+----+------+
4
d
+----+------+
1 row in set (0.00 sec)
查看表结构,会有 AUTO_INCREMENT=n 项:
mysql> show create table for_delete \G
*************************** 1. row ***************************Table: for_delete
Create Table: CREATE TABLE `for_delete` (`id` int(10) unsigned NOT NULL AUTO_INCREMENT,`name` varchar(20) DEFAULT NULL,PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8
1 row in set (0.00 sec)
说明:虽然delete语句删除了整表,但是再向删除后的表插入时,表中的自增值会在之前的原数据的基础之上增加。
截断表
基础语法:
TRUNCATE [TABLE] table_name
TRUNCATE 只能对整表操作,不能像 DELETE 一样针对部分数据操作;
实际上 MySQL 不对数据操作,所以比 DELETE 更快,但是TRUNCATE在删除数据的时候,并不经过真正的事物,所以无法回滚
会重置 AUTO_INCREMENT 项
准备测试表:
mysql> create table for_truncate (-> id int unsigned primary key auto_increment,-> name varchar(20)-> )engine=innodb default charset=utf8;
Query OK, 0 rows affected (0.02 sec)
插入测试数据:
mysql> insert into for_truncate (name) values ('a'), ('b'), ('c');
Query OK, 3 rows affected (0.00 sec)
Records: 3
Duplicates: 0
Warnings: 0mysql> select * from for_truncate;
+----+------+
id
name
+----+------+
1
a
2
b
3
c
+----+------+
3 rows in set (0.00 sec)
截断整表数据,注意影响行数是 0,所以实际上没有对数据真正操作:
mysql> truncate for_truncate;
Query OK, 0 rows affected (0.02 sec)mysql> select * from for_truncate;
Empty set (0.00 sec)
再插入一条数据,自增 id 在重新增长:
mysql> insert into for_truncate (name) values ('d');
Query OK, 1 row affected (0.00 sec)mysql> select * from for_truncate;
+----+------+
id
name
+----+------+
1
d
+----+------+
1 row in set (0.00 sec)
查看表结构,会有 AUTO_INCREMENT=2 项:
mysql> show create table for_truncate \G
*************************** 1. row ***************************Table: for_truncate
Create Table: CREATE TABLE `for_truncate` (`id` int(10) unsigned NOT NULL AUTO_INCREMENT,`name` varchar(20) DEFAULT NULL,PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8
1 row in set (0.00 sec)
插入查询结果
基础语法:
INSERT INTO table_name [(column [, column ...])] SELECT ...
案例:删除表中的的重复记录,重复的数据只能有一份
创建原数据表,插入测试数据:
mysql> create table duplicate_table (-> id int,-> name varchar(20)-> );
Query OK, 0 rows affected (0.04 sec)mysql> insert into duplicate_table values-> (100, 'aaa'),-> (100, 'aaa'),-> (200, 'bbb'),-> (200, 'bbb'),-> (200, 'bbb'),-> (300, 'ccc');
Query OK, 6 rows affected (0.00 sec)
Records: 6
Duplicates: 0
Warnings: 0
创建一张空表 no_duplicate_table结构和 duplicate_table结构一样:
mysql> create table no_duplicate_table like duplicate_table;
Query OK, 0 rows affected (0.01 sec)mysql> desc no_duplicate_table;
+-------+-------------+------+-----+---------+-------+
Field
Type
Null
Key
Default
Extra
+-------+-------------+------+-----+---------+-------+
id
int(11)
YES
NULL
name
varchar(20)
YES
NULL
+-------+-------------+------+-----+---------+-------+
2 rows in set (0.00 sec)
将 duplicate_table 的去重数据插入到 no_duplicate_table:
mysql> insert into no_duplicate_table select distinct * from duplicate_table;
Query OK, 3 rows affected (0.00 sec)
Records: 3
Duplicates: 0
Warnings: 0mysql> select * from no_duplicate_table;
+------+------+
id
name
+------+------+
100
aaa
200
bbb
300
ccc
+------+------+
3 rows in set (0.00 sec)
通过重命名表,实现原子的去重操作:
mysql> alter table duplicate_table rename to duplicate_table_bak;
Query OK, 0 rows affected (0.00 sec)mysql> alter table no_duplicate_table rename to duplicate_table;
Query OK, 0 rows affected (0.01 sec)
聚合函数
案例:
统计班级共有多少同学:
mysql> select count(*) from students;
+----------+
count(*)
+----------+
4
+----------+
1 row in set (0.00 sec)
统计班级收集的 email 有多少:
mysql> select count(email) from students;
+--------------+
count(email)
+--------------+
1
+--------------+
1 row in set (0.00 sec)
统计本次考试的数学成绩分数个数:
统计全部成绩:
mysql> select count(math) from exam_result;
+-------------+
count(math)
+-------------+
6
+-------------+
1 row in set (0.00 sec)
统计去重成绩数量:
mysql> select count(distinct math) from exam_result;
+----------------------+
count(distinct math)
+----------------------+
5
+----------------------+
1 row in set (0.00 sec)
统计数学成绩总分:
mysql> select sum(math) from exam_result;
+-----------+
sum(math)
+-----------+
569
+-----------+
1 row in set (0.00 sec)
统计平均总分:
mysql> select avg(chinese+math+english) from exam_result;
+---------------------------+
avg(chinese+math+english)
+---------------------------+
297.5
+---------------------------+
1 row in set (0.00 sec)
返回英语最高分:
mysql> select max(english) from exam_result;
+--------------+
max(english)
+--------------+
90
+--------------+
1 row in set (0.00 sec)
返回 > 70 分以上的数学最低分:
mysql> select min(math) from exam_result where math>70;
+-----------+
min(math)
+-----------+
73
+-----------+
1 row in set (0.00 sec)
group by子句的使用
在select中使用group by 子句可以对指定列进行分组查询
基本语法:
select column1, column2, .. from table group by column;
案例:
准备工作,创建一个雇员信息表
EMP员工表
DEPT部门表
SALGRADE工资等级表
mysql> desc dept;
+--------+--------------------------+------+-----+---------+-------+
Field
Type
Null
Key
Default
Extra
+--------+--------------------------+------+-----+---------+-------+
deptno
int(2) unsigned zerofill
NO
NULL
dname
varchar(14)
YES
NULL
loc
varchar(13)
YES
NULL
+--------+--------------------------+------+-----+---------+-------+
3 rows in set (0.00 sec)mysql> desc emp;
+----------+--------------------------+------+-----+---------+-------+
Field
Type
Null
Key
Default
Extra
+----------+--------------------------+------+-----+---------+-------+
empno
int(6) unsigned zerofill
NO
NULL
ename
varchar(10)
YES
NULL
job
varchar(9)
YES
NULL
mgr
int(4) unsigned zerofill
YES
NULL
hiredate
datetime
YES
NULL
sal
decimal(7,2)
YES
NULL
comm
decimal(7,2)
YES
NULL
deptno
int(2) unsigned zerofill
YES
NULL
+----------+--------------------------+------+-----+---------+-------+
8 rows in set (0.00 sec)mysql> desc salgrade;
+-------+---------+------+-----+---------+-------+
Field
Type
Null
Key
Default
Extra
+-------+---------+------+-----+---------+-------+
grade
int(11)
YES
NULL
losal
int(11)
YES
NULL
hisal
int(11)
YES
NULL
+-------+---------+------+-----+---------+-------+
3 rows in set (0.00 sec)
显示每个部门的平均工资和最高工资:
mysql> select deptno, avg(sal) avg, max(sal) max from emp group by deptno;
+--------+-------------+---------+
deptno
avg
max
+--------+-------------+---------+
10
2916.666667
5000.00
20
2175.000000
3000.00
30
1566.666667
2850.00
+--------+-------------+---------+
3 rows in set (0.00 sec)
每个部门的每种岗位的平均工资和最低工资:
mysql> select deptno, job, avg(sal) avg, min(sal) min from emp group by deptno, job;
+--------+-----------+-------------+---------+
deptno
job
avg
min
+--------+-----------+-------------+---------+
10
CLERK
1300.000000
1300.00
10
MANAGER
2450.000000
2450.00
10
PRESIDENT
5000.000000
5000.00
20
ANALYST
3000.000000
3000.00
20
CLERK
950.000000
800.00
20
MANAGER
2975.000000
2975.00
30
CLERK
950.000000
950.00
30
MANAGER
2850.000000
2850.00
30
SALESMAN
1400.000000
1250.00
+--------+-----------+-------------+---------+
9 rows in set (0.00 sec)
平均工资低于2000的部门和它的平均工资:
mysql> select deptno, avg(sal) avg from emp group by deptno having avg < 2000;
+--------+-------------+
deptno
avg
+--------+-------------+
30
1566.666667
+--------+-------------+
1 row in set (0.00 sec)
having经常和group by搭配使用,作用是对分组进行筛选,作用有些像where,但是having通常在数据where选择完,group by进行分组,再执行having筛选。

  在学习中,大家都背过各种知识点吧?知识点有时候特指教科书上或考试的知识。为了帮助大家更高效的学习,以下是小编为大家整理的高中数学考试知识点总结,仅供参考,希望能够帮助到大家。
  高中数学考试知识点总结1
  空间两条直线只有三种位置关系:平行、相交、异面
  1、按是否共面可分为两类:
  (1)共面:平行、相交
  (2)异面:
  异面直线的定义:不同在任何一个平面内的两条直线或既不平行也不相交。
  异面直线判定定理:用平面内一点与平面外一点的直线,与平面内不经过该点的直线是异面直线。
  两异面直线所成的角:范围为(0°,90°)esp.空间向量法
  两异面直线间距离:公垂线段(有且只有一条)esp.空间向量法
  2、若从有无公共点的角度看可分为两类:
  (1)有且仅有一个公共点――相交直线;
  (2)没有公共点――平行或异面
  直线和平面的位置关系:
  直线和平面只有三种位置关系:在平面内、与平面相交、与平面平行
  ①直线在平面内――有无数个公共点
  ②直线和平面相交――有且只有一个公共点
  直线与平面所成的角:平面的一条斜线和它在这个平面内的射影所成的锐角。
  高中数学考试知识点总结2
  ★高中数学导数知识点
  一、早期导数概念――――特殊的形式大约在1629年法国数学家费马研究了作曲线的切线和求函数极值的方法1637年左右他写一篇手稿《求最大值与最小值的方法》。在作切线时他构造了差分f(A+E)―f(A),发现的因子E就是我们所说的导数f(A)。
  二、17世纪――――广泛使用的“流数术”17世纪生产力的发展推动了自然科学和技术的发展在前人创造性研究的基础上大数学家牛顿、莱布尼茨等从不同的角度开始系统地研究微积分。牛顿的微积分理论被称为“流数术”他称变量为流量称变量的变化率为流数相当于我们所说的导数。牛顿的有关“流数术”的主要著作是《求曲边形面积》、《运用无穷多项方程的计算法》和《流数术和无穷级数》流数理论的实质概括为他的重点在于一个变量的函数而不在于多变量的方程在于自变量的变化与函数的变化的比的构成最在于决定这个比当变化趋于零时的极限。
  三、19世纪导数――――逐渐成熟的理论1750年达朗贝尔在为法国科学家院出版的《百科全书》第五版写的“微分”条目中提出了关于导数的一种观点可以用现代符号简单表示{dy/dx)=lim(oy/ox)。1823年柯西在他的《无穷小分析概论》中定义导数如果函数y=f(x)在变量x的两个给定的界限之间保持连续并且我们为这样的变量指定一个包含在这两个不同界限之间的值那么是使变量得到一个无穷小增量。19世纪60年代以后魏尔斯特拉斯创造了ε―δ语言对微积分中出现的各种类型的极限重加表达导数的定义也就获得了今天常见的形式。
  四、实无限将异军突起微积分第二轮初等化或成为可能微积分学理论基础大体可以分为两个部分。一个是实无限理论即无限是一个具体的东西一种真实的存在另一种是潜无限指一种意识形态上的过程比如无限接近。就历史来看两种理论都有一定的道理。其中实无限用了150年后来极限论就是现在所使用的。光是电磁波还是粒子是一个物理学长期争论的问题后来由波粒二象性来统一。微积分无论是用现代极限论还是150年前的理论都不是最好的手段。
  ★高中数学导数要点
  1、求函数的单调性:
  利用导数求函数单调性的基本方法:设函数yf(x)在区间(a,b)内可导,(1)如果恒f(x)0,则函数yf(x)在区间(a,b)上为增函数;(2)如果恒f(x)0,则函数yf(x)在区间(a,b)上为减函数;(3)如果恒f(x)0,则函数yf(x)在区间(a,b)上为常数函数。
  利用导数求函数单调性的基本步骤:①求函数yf(x)的定义域;②求导数f(x);③解不等式f(x)0,解集在定义域内的不间断区间为增区间;④解不等式f(x)0,解集在定义域内的不间断区间为减区间。
  反过来,也可以利用导数由函数的单调性解决相关问题(如确定参数的取值范围):设函数yf(x)在区间(a,b)内可导,
  (1)如果函数yf(x)在区间(a,b)上为增函数,则f(x)0(其中使f(x)0的x值不构成区间);
  (2)如果函数yf(x)在区间(a,b)上为减函数,则f(x)0(其中使f(x)0的x值不构成区间);
  (3)如果函数yf(x)在区间(a,b)上为常数函数,则f(x)0恒成立。
  2、求函数的极值:
  设函数yf(x)在x0及其附近有定义,如果对x0附近的所有的点都有f(x)f(x0)(或f(x)f(x0)),则称f(x0)是函数f(x)的极小值(或极大值)。
  可导函数的极值,可通过研究函数的单调性求得,基本步骤是:
  (1)确定函数f(x)的定义域;(2)求导数f(x);(3)求方程f(x)0的全部实根,x1x2xn,顺次将定义域分成若干个小区间,并列表:x变化时,f(x)和f(x)值的
  变化情况:
  (4)检查f(x)的符号并由表格判断极值。
  3、求函数的最大值与最小值:
  如果函数f(x)在定义域I内存在x0,使得对任意的xI,总有f(x)f(x0),则称f(x0)为函数在定义域上的最大值。函数在定义域内的极值不一定唯一,但在定义域内的最值是唯一的。
  求函数f(x)在区间[a,b]上的最大值和最小值的步骤:(1)求f(x)在区间(a,b)上的极值;
  (2)将第一步中求得的极值与f(a),f(b)比较,得到f(x)在区间[a,b]上的最大值与最小值。
  4、解决不等式的有关问题:
  (1)不等式恒成立问题(绝对不等式问题)可考虑值域。
  f(x)(xA)的值域是[a,b]时,
  不等式f(x)0恒成立的充要条件是f(x)max0,即b0;
  不等式f(x)0恒成立的充要条件是f(x)min0,即a0。
  f(x)(xA)的值域是(a,b)时,
  不等式f(x)0恒成立的充要条件是b0;不等式f(x)0恒成立的充要条件是a0。
  (2)证明不等式f(x)0可转化为证明f(x)max0,或利用函数f(x)的单调性,转化为证明f(x)f(x0)0。
  5、导数在实际生活中的应用:
  实际生活求解最大(小)值问题,通常都可转化为函数的最值。在利用导数来求函数最值时,一定要注意,极值点唯一的单峰函数,极值点就是最值点,在解题时要加以说明。
  高中数学考试知识点总结3
  (一)导数第一定义
  设函数 y = f(x) 在点 x0 的某个领域内有定义,当自变量 x 在 x0 处有增量 △x ( x0 + △x 也在该邻域内 ) 时,相应地函数取得增量 △y = f(x0 + △x) - f(x0) ;如果 △y 与 △x 之比当 △x→0 时极限存在,则称函数 y = f(x) 在点 x0 处可导,并称这个极限值为函数 y = f(x) 在点 x0 处的导数记为
f(x0) ,即导数第一定义
  (二)导数第二定义
  设函数 y = f(x) 在点 x0 的某个领域内有定义,当自变量 x 在 x0 处有变化 △x ( x - x0 也在该邻域内 ) 时,相应地函数变化 △y = f(x) - f(x0) ;如果 △y 与 △x 之比当 △x→0 时极限存在,则称函数 y = f(x) 在点 x0 处可导,并称这个极限值为函数 y = f(x) 在点 x0 处的导数记为 f(x0) ,即
导数第二定义
  (三)导函数与导数
  如果函数 y = f(x) 在开区间 I 内每一点都可导,就称函数f(x)在区间 I 内可导。这时函数 y = f(x) 对于区间 I 内的每一个确定的 x 值,都对应着一个确定的导数,这就构成一个新的函数,称这个函数为原来函数 y = f(x) 的导函数,记作 y, f(x), dy/dx, df(x)/dx。导函数简称导数。
  (四)单调性及其应用
  1.利用导数研究多项式函数单调性的一般步骤
  (1)求f(x)
  (2)确定f(x)在(a,b)内符号 (3)若f(x)>0在(a,b)上恒成立,则f(x)在(a,b)上是增函数;若f(x)<0在(a,b)上恒成立,则f(x)在(a,b)上是减函数
  2.用导数求多项式函数单调区间的一般步骤
  (1)求f(x)
  (2)f(x)>0的解集与定义域的交集的对应区间为增区间; f(x)<0的解集与定义域的交集的对应区间为减区间
  学习了导数基础知识点,接下来可以学习高二数学中涉及到的导数应用的部分。
  高中数学考试知识点总结4
  一、高中数列基本公式:
  1、一般数列的通项an与前n项和Sn的关系:an=
  2、等差数列的通项公式:an=a1+(n-1)d an=ak+(n-k)d (其中a1为首项、ak为已知的第k项) 当d≠0时,an是关于n的一次式;当d=0时,an是一个常数。
  3、等差数列的前n项和公式:Sn=
  Sn=
  Sn=
  当d≠0时,Sn是关于n的二次式且常数项为0;当d=0时(a1≠0),Sn=na1是关于n的正比例式。
  4、等比数列的通项公式: an= a1qn-1an= akqn-k
  (其中a1为首项、ak为已知的第k项,an≠0)
  5、等比数列的前n项和公式:当q=1时,Sn=n a1 (是关于n的正比例式);
  当q≠1时,Sn=
  Sn=
  二、高中数学中有关等差、等比数列的结论
  1、等差数列{an}的任意连续m项的和构成的数列Sm、S2m-Sm、S3m-S2m、S4m- S3m、……仍为等差数列。
  2、等差数列{an}中,若m+n=p+q,则
  3、等比数列{an}中,若m+n=p+q,则
  4、等比数列{an}的任意连续m项的和构成的数列Sm、S2m-Sm、S3m-S2m、S4m- S3m、……仍为等比数列。
  5、两个等差数列{an}与{bn}的和差的数列{an+bn}、{an-bn}仍为等差数列。
  6、两个等比数列{an}与{bn}的积、商、倒数组成的数列仍为等比数列。
  7、等差数列{an}的任意等距离的项构成的数列仍为等差数列。
  8、等比数列{an}的任意等距离的项构成的数列仍为等比数列。
  9、三个数成等差数列的设法:a-d,a,a+d;四个数成等差的设法:a-3d,a-d,,a+d,a+3d
  10、三个数成等比数列的设法:a/q,a,aq;
  四个数成等比的错误设法:a/q3,a/q,aq,aq3 (为什么?)
  高中数学考试知识点总结5
  轨迹,包含两个方面的问题:凡在轨迹上的点都符合给定的条件,这叫做轨迹的纯粹性(也叫做必要性);凡不在轨迹上的点都不符合给定的条件,也就是符合给定条件的点必在轨迹上,这叫做轨迹的完备性(也叫做充分性)。
  一、求动点的轨迹方程的基本步骤。
  1、建立适当的坐标系,设出动点M的坐标;
  2、写出点M的集合;
  3、列出方程=0;
  4、化简方程为最简形式;
  5、检验。
  二、求动点的轨迹方程的常用方法:求轨迹方程的方法有多种,常用的有直译法、定义法、相关点法、参数法和交轨法等。
  1、直译法:直接将条件翻译成等式,整理化简后即得动点的轨迹方程,这种求轨迹方程的方法通常叫做直译法。
  2、定义法:如果能够确定动点的轨迹满足某种已知曲线的定义,则可利用曲线的定义写出方程,这种求轨迹方程的方法叫做定义法。
  3、相关点法:用动点Q的坐标x,y表示相关点P的坐标x0、y0,然后代入点P的坐标(x0,y0)所满足的曲线方程,整理化简便得到动点Q轨迹方程,这种求轨迹方程的方法叫做相关点法。
  4、参数法:当动点坐标x、y之间的直接关系难以找到时,往往先寻找x、y与某一变数t的关系,得再消去参变数t,得到方程,即为动点的轨迹方程,这种求轨迹方程的方法叫做参数法。
  5、交轨法:将两动曲线方程中的参数消去,得到不含参数的方程,即为两动曲线交点的轨迹方程,这种求轨迹方程的方法叫做交轨法。
  求动点轨迹方程的一般步骤:
  ①建系――建立适当的坐标系;
  ②设点――设轨迹上的任一点P(x,y);
  ③列式――列出动点p所满足的关系式;
  ④代换――依条件的特点,选用距离公式、斜率公式等将其转化为关于X,Y的方程式,并化简;
  ⑤证明――证明所求方程即为符合条件的动点轨迹方程。
  高中数学考试知识点总结6
  一、集合有关概念
  1、集合的含义:某些指定的对象集在一起就成为一个集合,其中每一个对象叫元素。
  2、集合的中元素的三个特性:1.元素的确定性;2.元素的互异性;3.元素的无序性.
  3、集合的表示:(1){?}如{我校的篮球队员},{太平洋,大西洋,印度洋,北冰洋}(2).用拉丁字母表示集合:A={我校的篮球队员},B={1,2,3,4,5}4
  .集合的表示方法:列举法与描述法。
  常用数集及其记法:非负整数集(即自然数集)记作:N正整数集N*或N+整数集Z有理数集Q实数集R
  5.关于“属于”的概念
  集合的元素通常用小写的拉丁字母表示,如:a是集合A的元素,就说a属于集合A记作a∈A,相反,a不属于集合A记作a?A
  列举法:把集合中的元素一一列举出来,然后用一个大括号括上。
  描述法:将集合中的元素的公共属性描述出来,写在大括号内表示集合的方法。用确定的条件表
  示某些对象是否属于这个集合的方法。6、集合的分类:
  (1).有限集含有有限个元素的集合(2).无限集含有无限个元素的集合
  (3).空集不含任何元素的集合例:{x|x2=-5}=Φ
  二、集合间的基本关系
  1.“包含”关系―子集注意:A?B有两种可能(1)A是B的一部分,;(2)A与B是同一集合。反之:集?B或B??A合A不包含于集合B,或集合B不包含集合A,记作A?
  2.“相等”关系:对于两个集合A与B,如果集合A的任何一个元素都是集合B的元素,同时,集合B的任何一个元素都是集合A的元素,我们就说集合A等于集合B,即:A=B
  ①任何一个集合是它本身的子集。即A?A
  ②如果A?B,且A?B那就说集合A是集合B的真子集,记作A B(或BA)
  ③如果A?B,B?C,那么A?C④如果A?B同时B?A那么A=B
  3.不含任何元素的集合叫做空集,记为Φ
  规定:空集是任何集合的子集,空集是任何非空集合的真子集。三、集合的运算
  1.交集的定义:一般地,由所有属于A且属于B的元素所组成的集合,叫做A,B的交集.
  记作A∩B(读作"A交B"),即A∩B={x|x∈A,且x∈B}.
  2、并集的定义:一般地,由所有属于集合A或属于集合B的元素所组成的集合,叫做A,B的并集。记作:A∪B(读作"A并B"),即A∪B={x|x∈A,或x∈B}.
  3、交集与并集的性质:A∩A=A,A∩φ=φ,A∩B=B∩A,A∪A=A,
  A∪φ=A,A∪B=B∪A.
  4、全集与补集(1)补集:设S是一个集合,A是S的一个子集(即A?S),由S中所有不属于A的元素组成的集合,叫做S中子集A的补集(或余集)记作:CSA即CSA={x?x?S且x?A}
  (2)全集:如果集合S含有我们所要研究的各个集合的全部元素,看作一个全集。通常用U来表示。
  (3)性质:⑴CU(CUA)=A⑵(CUA)∩A=Φ⑶(CUA)∪A=U二、函数的有关概念
  合A中的任意一个数x,在集合B中都有唯一确定的数f(x)和它对应,那么就称f:A→B为从集合A到集合B的一个函数.记作:y=f(x),x∈A.其中,x叫做自变量,x的取值范围A叫做函数的定义域;与x的值相对应的y值叫做函数值,函数值的集合{f(x)|x∈A}叫做函数的值域.
  能使函数式有意义的实数x的集合称为函数的定义域,求函数的定义域时列不等式组的主要依据是:(1)分式的分母不等于零;(2)偶次方根的被开方数不小于零;(3)对数式的真数必须大于零;(4)指数、对数式的底必须大于零且不等于1.(5)如果函数是由一些基本函数通过四则运算结合而成的.那么,它的定义域是使各部分都有意义的x的值组成的集合.(6)指数为零底不可以等于零(7)实际问题中的函数的定义域还要保证实际问题有意义.
  2.构成函数的三要素:定义域、对应关系和值域
  再注意:(1)由于值域是由定义域和对应关系决定的,所以,如果两个函数的定义域和对应关系完全一致,即称这两个函数相等(或为同一函数)(2)两个函数相等当且仅当它们的定义域和对应关系完全一致,而与表示自变量和函数值的字母无关。相同函数的判断方法:①表达式相同;②定义域一致(两点必须同时具备)
  3.区间的概念(1)区间的分类:开区间、闭区间、半开半闭区间;(2)无穷区间;(3)区间的数轴表示.4.映射一般地,设A、B是两个非空的集合,如果按某一个确定的对应法则f,使对于集合A中的任意一个元素x,在集合B中都有唯一确定的元素y与之对应,那么就称对应f:A?B为从集合A到集合B的一个映射。记作“f:A?B”
  给定一个集合A到B的映射,如果a∈A,b∈B.且元素a和元素b对应,那么,我们把元素b叫做元素a的象,元素a叫做元素b的原象
  说明:函数是一种特殊的映射,映射是一种特殊的对应,①集合A、B及对应法则f是确定的;②对应法则有“方向性”,即强调从集合A到集合B的对应,它与从B到A的对应关系一般是不同的;③对于映射f:A→B来说,则应满足:(Ⅰ)集合A中的每一个元素,在集合B中都有象,并且象是唯一的;(Ⅱ)集合A中不同的元素,在集合B中对应的象可以是同一个;(Ⅲ)不要求集合B中的每一个元素在集合A中都有原象。
  5.常用的函数表示法:解析法:图象法:列表法:
  6.分段函数在定义域的不同部分上有不同的解析表达式的函数。(1)分段函数是一个函数,不要把它误认为是几个函数;
  (2)分段函数的定义域是各段定义域的并集,值域是各段值域的并集.7.函数单调性(1).设函数y=f(x)的定义域为I,如果对于定义域I内的某个区间D内的任意两个自变量x1,x2,当x1
  如果对于区间D上的任意两个自变量的值x1,x2,当x1
  注意:函数的单调性是在定义域内的某个区间上的性质,是函数的局部性质;
  (2)图象的特点如果函数y=f(x)在某个区间是增函数或减函数,那么说函数y=f(x)在这一区间上具有(严格的)单调性,在单调区间上增函数的图象从左到右是上升的,减函数的图象从左到右是下降的.(3).函数单调区间与单调性的判定方法
  (A)定义法:○1任取x1,x2∈D,且x1
  8.函数的奇偶性
  (1)一般地,对于函数f(x)的定义域内的任意一个x,都有f(-x)=f(x),那么f(x)就叫做偶函数.
  (2).一般地,对于函数f(x)的定义域内的任意一个x,都有f(-x)=―f(x),那么f(x)就叫做奇函数.
  注意:○1函数是奇函数或是偶函数称为函数的奇偶性,函数的奇偶性是函数的整体性质;函数可能没有奇偶性,也可能既是奇函数又是偶函数。
  2由函数的奇偶性定义可知,函数具有奇偶性的一个必要条件是,对于定义域内的任意一个x,○
  则-x也一定是定义域内的一个自变量(即定义域关于原点对称).(3)具有奇偶性的函数的图象的特征
  偶函数的图象关于y轴对称;奇函数的图象关于原点对称.
  总结:利用定义判断函数奇偶性的格式步骤:○1首先确定函数的定义域,并判断其定义域是否关于原点对称;○2确定f(-x)与f(x)的关系;○3作出相应结论:若f(-x)=f(x)或f(-x)-f(x)=0,则f(x)是偶函数;若f(-x)=-f(x)或f(-x)+f(x)=0,则f(x)是奇函数.9、函数的解析表达式
  (1).函数的解析式是函数的一种表示方法,要求两个变量之间的函数关系时,一是要求出它们之间的对应法则,二是要求出函数的定义域.
  (2).求函数的解析式的主要方法有:待定系数法、换元法、消参法等,如果已知函数解析式的构造时,可用待定系数法;已知复合函数f[g(x)]的表达式时,可用换元法,这时要注意元的取值范围;当已知表达式较简单时,也可用凑配法;若已知抽象函数表达式,则常用解方程组消参的方法求出f(x)。
  补充不等式的解法与二次函数(方程)的性质
  高中数学考试知识点总结7
  一、圆及圆的相关量的定义
  1.平面上到定点的距离等于定长的所有点组成的图形叫做圆。定点称为圆心,定长称为半径。
  2.圆上任意两点间的部分叫做圆弧,简称弧。大于半圆的弧称为优弧,小于半圆的弧称为劣弧。连接圆上任意两点的线段叫做弦。经过圆心的弦叫
  做直径。
  3.顶点在圆心上的角叫做圆心角。顶点在圆周上,且它的两边分别与圆有另一个交点的角叫做圆周角。
  4.过三角形的三个顶点的圆叫做三角形的外接圆,其圆心叫做三角形的外心。和三角形三边都相切的圆叫做这个三角形的内切圆,其圆心称为内心。
  5.直线与圆有3种位置关系:无公共点为相离;有2个公共点为相交;圆与直线有唯一公共点为相切,这条直线叫做圆的切线,这个唯一的公共点叫做切点。
  6.两圆之间有5种位置关系:无公共点的,一圆在另一圆之外叫外离,在之内叫内含;有唯一公共点的,一圆在另一圆之外叫外切,在之内叫内切;有2个公共点的叫相交。两圆圆心之间的距离叫做圆心距。
  7.在圆上,由2条半径和一段弧围成的图形叫做扇形。圆锥侧面展开图是一个扇形。这个扇形的半径成为圆锥的母线。
  二、有关圆的字母表示方法
  圆--⊙ 半径―r 弧--⌒ 直径―d
  扇形弧长/圆锥母线―l 周长―C 面积―S三、有关圆的基本性质与定理(27个)
  1.点P与圆O的位置关系(设P是一点,则PO是点到圆心的距离):
  P在⊙O外,PO>r;P在⊙O上,PO=r;P在⊙O内,PO
  2.圆是轴对称图形,其对称轴是任意一条过圆心的直线。圆也是中心对称图形,其对称中心是圆心。
  3.垂径定理:垂直于弦的直径平分这条弦,并且平分弦所对的弧。逆定
  理:平分弦(不是直径)的直径垂直于弦,并且平分弦所对的弧。
  4.在同圆或等圆中,如果2个圆心角,2个圆周角,2条弧,2条弦中有一组量相等,那么他们所对应的其余各组量都分别相等。
  5.一条弧所对的圆周角等于它所对的圆心角的一半。
  6.直径所对的圆周角是直角。90度的圆周角所对的.弦是直径。
  7.不在同一直线上的3个点确定一个圆。
  8.一个三角形有唯一确定的外接圆和内切圆。外接圆圆心是三角形各边垂直平分线的交点,到三角形3个顶点距离相等;内切圆的圆心是三角形各内角平分线的交点,到三角形3边距离相等。
  9.直线AB与圆O的位置关系(设OP⊥AB于P,则PO是AB到圆心的距
  离):
  AB与⊙O相离,PO>r;AB与⊙O相切,PO=r;AB与⊙O相交,PO
  10.圆的切线垂直于过切点的直径;经过直径的一端,并且垂直于这条直径的直线,是这个圆的切线。
  11.圆与圆的位置关系(设两圆的半径分别为R和r,且R≥r,圆心距为P):
  外离P>R+r;外切P=R+r;相交R-r
  三、有关圆的计算公式
  1.圆的周长C=2πr=πd
  2.圆的面积S=s=πr?
  3.扇形弧长l=nπr/180
  4.扇形面积S=nπr? /360=rl/2
  5.圆锥侧面积S=πrl
  四、圆的方程
  1.圆的标准方程
  在平面直角坐标系中,以点O(a,b)为圆心,以r为半径的圆的标准方程是
  (x-a)^2+(y-b)^2=r^2
  2.圆的一般方程
  把圆的标准方程展开,移项,合并同类项后,可得圆的一般方程是
  x^2+y^2+Dx+Ey+F=0
  和标准方程对比,其实D=-2a,E=-2b,F=a^2+b^2
  相关知识:圆的离心率e=0.在圆上任意一点的曲率半径都是r.
  五、圆与直线的位置关系判断
  平面内,直线Ax+By+C=O与圆x^2+y^2+Dx+Ey+F=0的位置关系判断一般方法是
  讨论如下2种情况:
  (1)由Ax+By+C=O可得y=(-C-Ax)/B,[其中B不等于0],
  代入x^2+y^2+Dx+Ey+F=0,即成为一个关于x的一元二次方程f(x)=0.
  利用判别式b^2-4ac的符号可确定圆与直线的位置关系如下:
  如果b^2-4ac>0,则圆与直线有2交点,即圆与直线相交
  如果b^2-4ac=0,则圆与直线有1交点,即圆与直线相切
  如果b^2-4ac<0,则圆与直线有0交点,即圆与直线相离
  (2)如果B=0即直线为Ax+C=0,即x=-C/A.它平行于y轴(或垂直于x轴)
  将x^2+y^2+Dx+Ey+F=0化为(x-a)^2+(y-b)^2=r^2
  令y=b,求出此时的两个x值x1,x2,并且我们规定x1
  当x=-C/Ax2时,直线与圆相离
  当x1
  当x=-C/A=x1或x=-C/A=x2时,直线与圆相切
  圆的定理:
  1.不在同一直线上的三点确定一个圆。
  2.垂径定理 垂直于弦的直径平分这条弦并且平分弦所对的两条弧
  推论1.①平分弦(不是直径)的直径垂直于弦,并且平分弦所对的两条弧
  ②弦的垂直平分线经过圆心,并且平分弦所对的两条弧
  ③平分弦所对的一条弧的直径,垂直平分弦,并且平分弦所对的另一条弧
  推论2.圆的两条平行弦所夹的弧相等
  3.圆是以圆心为对称中心的中心对称图形
  4.圆是定点的距离等于定长的点的集合
  5.圆的内部可以看作是圆心的距离小于半径的点的集合
  6.圆的外部可以看作是圆心的距离大于半径的点的集合
  7.同圆或等圆的半径相等
  8.到定点的距离等于定长的点的轨迹,是以定点为圆心,定长为半径的圆
  9.定理 在同圆或等圆中,相等的圆心角所对的弧相等,所对的弦 相等,所对的弦的弦心距相等
  10.推论 在同圆或等圆中,如果两个圆心角、两条弧、两条弦或两 弦的弦心距中有一组量相等那么它们所对应的其余各组量都相等
  11.定理 圆的内接四边形的对角互补,并且任何一个外角都等于它 的内对角
  12.①直线L和⊙O相交 d
  ②直线L和⊙O相切 d=r
  ③直线L和⊙O相离 d>r
  13.切线的判定定理 经过半径的外端并且垂直于这条半径的直线是圆的切线
  14.切线的性质定理 圆的切线垂直于经过切点的半径
  15.推论1 经过圆心且垂直于切线的直线必经过切点
  16.推论2 经过切点且垂直于切线的直线必经过圆心
  17.切线长定理 从圆外一点引圆的两条切线,它们的切线长相等, 圆心和这一点的连线平分两条切线的夹角
  18.圆的外切四边形的两组对边的和相等 外角等于内对角
  19.如果两个圆相切,那么切点一定在连心线上
  20.①两圆外离 d>R+r ②两圆外切 d=R+r
  ③两圆相交 R-rr)
  ④两圆内切 d=R-r(R>r) ⑤两圆内含dr)
  21.定理 相交两圆的连心线垂直平分两圆的公共弦
  22.定理 把圆分成n(n≥3):
  (1)依次连结各分点所得的多边形是这个圆的内接正n边形
  (2)经过各分点作圆的切线,以相邻切线的交点为顶点的多边形是这个圆的外切正n边形
  23.定理 任何正多边形都有一个外接圆和一个内切圆,这两个圆是同心圆
  24.正n边形的每个内角都等于(n-2)×180°/n
  25.定理 正n边形的半径和边心距把正n边形分成2n个全等的直角三角形
  26.正n边形的面积Sn=pnrn/2 p表示正n边形的周长
  27.正三角形面积√3a/4 a表示边长
  28.如果在一个顶点周围有k个正n边形的角,由于这些角的和应为 360°,因此k×(n-2)180°/n=360°化为(n-2)(k-2)=4
  29.弧长计算公式:L=n兀R/180
  30.扇形面积公式:S扇形=n兀R^2/360=LR/2
  31.内公切线长= d-(R-r) 外公切线长= d-(R+r)
  32.定理 一条弧所对的圆周角等于它所对的圆心角的一半
  33.推论1 同弧或等弧所对的圆周角相等;同圆或等圆中,相等的圆周角所对的弧也相等
  34.推论2 半圆(或直径)所对的圆周角是直角;90°的圆周角所 对的弦是直径
  35.弧长公式 l=a*r a是圆心角的弧度数r >0 扇形面积公式 s=1/2*l*r
  高中数学考试知识点总结8
  一、求导数的方法
  (1)基本求导公式
  (2)导数的四则运算
  (3)复合函数的导数
  设在点x处可导,y=在点处可导,则复合函数在点x处可导,且即
  二、关于极限
  1、数列的极限:
  粗略地说,就是当数列的项n无限增大时,数列的项无限趋向于A,这就是数列极限的描述性定义。记作:=A。如:
  2、函数的极限:
  当自变量x无限趋近于常数时,如果函数无限趋近于一个常数,就说当x趋近于时,函数的极限是,记作
  三、导数的概念
  1、在处的导数。
  2、在的导数。
  3。函数在点处的导数的几何意义:
  函数在点处的导数是曲线在处的切线的斜率,
  即k=,相应的切线方程是
  注:函数的导函数在时的函数值,就是在处的导数。
  例、若=2,则=()A―1B―2C1D
  四、导数的综合运用
  (一)曲线的切线
  函数y=f(x)在点处的导数,就是曲线y=(x)在点处的切线的斜率。由此,可以利用导数求曲线的切线方程。具体求法分两步:
  (1)求出函数y=f(x)在点处的导数,即曲线y=f(x)在点处的切线的斜率k=
  (2)在已知切点坐标和切线斜率的条件下,求得切线方程为x。
  高中数学考试知识点总结9
  一、平面的基本性质与推论
  1、平面的基本性质:
  公理1如果一条直线的两点在一个平面内,那么这条直线在这个平面内;
  公理2过不在一条直线上的三点,有且只有一个平面;
  公理3如果两个不重合的平面有一个公共点,那么它们有且只有一条过该点的公共直线。
  2、空间点、直线、平面之间的位置关系:
  直线与直线―平行、相交、异面;
  直线与平面―平行、相交、直线属于该平面(线在面内,最易忽视);
  平面与平面―平行、相交。
  3、异面直线:
  平面外一点A与平面一点B的连线和平面内不经过点B的直线是异面直线(判定);
  所成的角范围(0,90)度(平移法,作平行线相交得到夹角或其补角);
  两条直线不是异面直线,则两条直线平行或相交(反证);
  异面直线不同在任何一个平面内。
  求异面直线所成的角:平移法,把异面问题转化为相交直线的夹角
  二、空间中的平行关系
  1、直线与平面平行(核心)
  定义:直线和平面没有公共点
  判定:不在一个平面内的一条直线和平面内的一条直线平行,则该直线平行于此平面(由线线平行得出)
  性质:一条直线和一个平面平行,经过这条直线的平面和这个平面相交,则这条直线就和两平面的交线平行
  2、平面与平面平行
  定义:两个平面没有公共点
  判定:一个平面内有两条相交直线平行于另一个平面,则这两个平面平行
  性质:两个平面平行,则其中一个平面内的直线平行于另一个平面;如果两个平行平面同时与第三个平面相交,那么它们的交线平行。
  3、常利用三角形中位线、平行四边形对边、已知直线作一平面找其交线
  三、空间中的垂直关系
  1、直线与平面垂直
  定义:直线与平面内任意一条直线都垂直
  判定:如果一条直线与一个平面内的两条相交的直线都垂直,则该直线与此平面垂直
  性质:垂直于同一直线的两平面平行
  推论:如果在两条平行直线中,有一条垂直于一个平面,那么另一条也垂直于这个平面
  直线和平面所成的角:【0,90】度,平面内的一条斜线和它在平面内的射影说成的锐角,特别规定垂直90度,在平面内或者平行0度
  2、平面与平面垂直
  定义:两个平面所成的二面角(从一条直线出发的两个半平面所组成的图形)是直二面角(二面角的平面角:以二面角的棱上任一点为端点,在两个半平面内分别作垂直于棱的两条射线所成的角)
  判定:一个平面过另一个平面的垂线,则这两个平面垂直
  性质:两个平面垂直,则一个平面内垂直于交线的直线与另一个平面垂直
【高中数学考试知识点总结】相关文章:
数学考试的总结04-18
高中数学必修三知识点总结04-22
高中数学必修四知识点总结12-03
数学考试后(数学考试后的感想)12-28
劝学高中课文知识点12-07
高中数学考试解题的四项注意01-22
高中《将进酒》语文知识点11-18
高中语文《滕王阁序》主要知识点总结11-29
高中数学考试解题时的几项注意事项01-25
高中语文知识点《将进酒》11-17

我要回帖

更多关于 线性规划问题的可行解如为最优解 的文章

 

随机推荐