MySQL表的增删查改

【MySQL】表的操作(增删查改) 本篇博客主要内容:MySQL数据库中表的增删查改。MySQL数据库中的表是一种二维结构,由行和列组成,用于存储和组织数据。每一列代表一个字段,每一行代表一条记录,通过定义字段的数据类型和约束条件来确保数据的完整性和准确性。表是数据库的基本存储单元,支持数据的插入、查询、更新和删除操作,并通过索引和存储引擎来优化查询性能和数据可靠性。本篇博客的重点在如何操作MySQL数据库中的表。本篇博客主要介绍了如何操作MySQL数据库中的表,包括表的创建,查看,删除,更改表名,表属性列的增删查改。MySQL。 阅读详情

1. 表的增删改查(CRUD)

CRUD 是数据库操作的核心,分别对应:

  • C:Create(创建/插入)。

  • R:Retrieve(查询/读取)。

  • U:Update(更新/修改)。

  • D:Delete(删除)。

2.表的 Create

2.1 基本语法

INSERT [INTO] table_name [(column1, column2, ...)] VALUES (value1, value2, ...);

案例:创建一张学生表

2.2 单行全列插入

INSERT INTO students VALUES (100, 10000, '唐三藏', NULL);

2.3 多行指定列插入

INSERT INTO students (sn, name) VALUES (20001, '曹孟德'), (20002, '孙仲谋');

2.4 插入否则更新(ON DUPLICATE KEY UPDATE)

INSERT ... ON DUPLICATE KEY UPDATE column = value [, column = value] ...

当主键或唯一键冲突时,更新数据:

INSERT INTO students (id, sn, name) VALUES (100, 10010, '唐大师')
ON DUPLICATE KEY UPDATE sn = 10010, name = '唐大师';

2.5 替换(REPLACE)

  • 无冲突:直接插入。

  • 有冲突:删除原记录,再插入新记录。

REPLACE INTO students (sn, name) VALUES (20001, '曹阿瞒');

3. 查询数据(Retrieve)

3.1 基本语法

SELECT [DISTINCT] column1, column2, ... FROM table_name [WHERE ...] [ORDER BY ...] [LIMIT ...];

案例:

3.2 查询示例

全列查询
SELECT * FROM exam_result;

不建议频繁使用 *,查询的列越多,意味着需要传输的数据量越大 , 可能会影响到索引的使用 , 当表中数据量很大的时候会影响性能。

指定列查询
SELECT name, english FROM exam_result;

使用表达式
SELECT name, chinese + math + english FROM exam_result;

使用别名 (as)
SELECT name, chinese + math + english AS 总分 FROM exam_result;

去重查询 (distinct)
SELECT DISTINCT math FROM exam_result;

4. 条件查询(WHERE)

4.1 常用运算符

运算符说明
=等于(NULL 不安全)
<=>等于(NULL 安全)
!= 或 <>不等于
BETWEEN ... AND ...范围匹配
IN (...)匹配集合中的值
LIKE模糊匹配(% 多个字符,_ 一个字符)
IS NULL / IS NOT NULL判断是否为空

4.2 示例

-- 英语不及格
SELECT name, english FROM exam_result WHERE english < 60;

-- 语文在 80~90 之间
SELECT name, chinese FROM exam_result WHERE chinese BETWEEN 80 AND 90;

-- 姓孙的同学
SELECT name FROM exam_result WHERE name LIKE '孙%';

-- 语文高于英语
SELECT name, chinese, english FROM exam_result WHERE chinese > english;

5. 排序(ORDER BY)

5.1 基本语法

SELECT ... FROM table_name [WHERE ...] ORDER BY column [ASC|DESC], [...];
-- 按数学升序
SELECT name, math FROM exam_result ORDER BY math;

-- 按总分降序
SELECT name, chinese + math + english AS 总分 FROM exam_result ORDER BY 总分 DESC;

-- 多字段排序
SELECT name, math, english, chinese FROM exam_result ORDER BY math DESC, english ASC;

6. 分页查询(LIMIT)

6.1 语法

LIMIT n;               -- 前 n 条
LIMIT s, n;            -- 从 s 开始取 n 条
LIMIT n OFFSET s;      -- 同上,更推荐
-- 第1页,每页3条
SELECT id, name FROM exam_result ORDER BY id LIMIT 3 OFFSET 0;

-- 第2页
SELECT id, name FROM exam_result ORDER BY id LIMIT 3 OFFSET 3;
建议:对未知表进行查询时,最好加一条 LIMIT 1 ,避免因为表中数据过大,查询全表数据导致数据库卡死。
-- 修改单列
UPDATE exam_result SET math = 80 WHERE name = '孙悟空';

-- 修改多列
UPDATE exam_result SET math = 60, chinese = 70 WHERE name = '曹孟德';

-- 使用原值计算
UPDATE exam_result SET math = math + 30 ORDER BY chinese + math + english LIMIT 3;

-- 更新全表(慎用)
UPDATE exam_result SET chinese = chinese * 2;

7. 更新数据(Update)

对查询到的结果进行列值更新。

7.1 基本语法

UPDATE table_name SET column1 = value1, column2 = value2 WHERE ...;

7.2 示例

-- 修改单列
UPDATE exam_result SET math = 80 WHERE name = '孙悟空';

-- 修改多列
UPDATE exam_result SET math = 60, chinese = 70 WHERE name = '曹孟德';

-- 使用原值计算
UPDATE exam_result SET math = math + 30 ORDER BY chinese + math + english LIMIT 3;

-- 更新全表(慎用)
UPDATE exam_result SET chinese = chinese * 2;

8. 删除数据(Delete)

8.1 基本语法

DELETE FROM table_name WHERE ...;

8.2 示例

-- 删除指定记录
DELETE FROM exam_result WHERE name = '孙悟空';

-- 删除全表数据(自增ID不会重置)
DELETE FROM for_delete;

9. 截断表(TRUNCATE)

9.1 特点

  • 删除全表数据。(只能对整表操作,不能像 DELETE 一样针对部分数据操作)

  • 速度快。

  • 自增ID重置。

  • 无法回滚。( 实际上 MySQL 不对数据操作,所以比 DELETE 更快,但是TRUNCATE在删除数据的时候,并不经过真正的事务,所以无法回滚 )

10. 插入查询结果

10.1 语法

INSERT INTO table_name SELECT ...;

10.2 示例:去重插入

CREATE TABLE no_duplicate_table LIKE duplicate_table;
INSERT INTO no_duplicate_table SELECT DISTINCT * FROM duplicate_table;
RENAME TABLE duplicate_table TO old, no_duplicate_table TO duplicate_table;
案例:删除表中的的重复复记录,重复的数据只能有一份

11. 聚合函数

函数说明
COUNT()统计行数
SUM()求和
AVG()平均值
MAX()最大值
MIN()最小值
SELECT COUNT(*) FROM students;
SELECT COUNT(qq) FROM students;  -- NULL 不计入
SELECT AVG(chinese + math + english) FROM exam_result;
SELECT MAX(english) FROM exam_result;

12. 分组查询(GROUP BY)

12.1 基本语法

SELECT column, 聚合函数 FROM table GROUP BY column;
案例: 准备工作,创建一个雇员信息表(来自oracle 9i 的经典测试表)
EMP 员工表  DEPT部门表 SALGRADE工资等级表
DROP database IF EXISTS `scott`;
CREATE database IF NOT EXISTS `scott` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

USE `scott`;

DROP TABLE IF EXISTS `dept`;
CREATE TABLE `dept` (
  `deptno` int(2) unsigned zerofill NOT NULL COMMENT '部门编号',
  `dname` varchar(14) DEFAULT NULL COMMENT '部门名称',
  `loc` varchar(13) DEFAULT NULL COMMENT '部门所在地点'
);


DROP TABLE IF EXISTS `emp`;
CREATE TABLE `emp` (
  `empno` int(6) unsigned zerofill NOT NULL COMMENT '雇员编号',
  `ename` varchar(10) DEFAULT NULL COMMENT '雇员姓名',
  `job` varchar(9) DEFAULT NULL COMMENT '雇员职位',
  `mgr` int(4) unsigned zerofill DEFAULT NULL COMMENT '雇员领导编号',
  `hiredate` datetime DEFAULT NULL COMMENT '雇佣时间',
  `sal` decimal(7,2) DEFAULT NULL COMMENT '工资月薪',
  `comm` decimal(7,2) DEFAULT NULL COMMENT '奖金',
  `deptno` int(2) unsigned zerofill DEFAULT NULL COMMENT '部门编号'
);


DROP TABLE IF EXISTS `salgrade`;
CREATE TABLE `salgrade` (
  `grade` int(11) DEFAULT NULL COMMENT '等级',
  `losal` int(11) DEFAULT NULL COMMENT '此等级最低工资',
  `hisal` int(11) DEFAULT NULL COMMENT '此等级最高工资'
);


insert into dept (deptno, dname, loc)
values (10, 'ACCOUNTING', 'NEW YORK');
insert into dept (deptno, dname, loc)
values (20, 'RESEARCH', 'DALLAS');
insert into dept (deptno, dname, loc)
values (30, 'SALES', 'CHICAGO');
insert into dept (deptno, dname, loc)
values (40, 'OPERATIONS', 'BOSTON');

insert into emp (empno, ename, job, mgr, hiredate, sal, comm, deptno)
values (7369, 'SMITH', 'CLERK', 7902, '1980-12-17', 800, null, 20);

insert into emp (empno, ename, job, mgr, hiredate, sal, comm, deptno)
values (7499, 'ALLEN', 'SALESMAN', 7698, '1981-02-20', 1600, 300, 30);

insert into emp (empno, ename, job, mgr, hiredate, sal, comm, deptno)
values (7521, 'WARD', 'SALESMAN', 7698, '1981-02-22', 1250, 500, 30);

insert into emp (empno, ename, job, mgr, hiredate, sal, comm, deptno)
values (7566, 'JONES', 'MANAGER', 7839, '1981-04-02', 2975, null, 20);

insert into emp (empno, ename, job, mgr, hiredate, sal, comm, deptno)
values (7654, 'MARTIN', 'SALESMAN', 7698, '1981-09-28', 1250, 1400, 30);

insert into emp (empno, ename, job, mgr, hiredate, sal, comm, deptno)
values (7698, 'BLAKE', 'MANAGER', 7839, '1981-05-01', 2850, null, 30);

insert into emp (empno, ename, job, mgr, hiredate, sal, comm, deptno)
values (7782, 'CLARK', 'MANAGER', 7839, '1981-06-09', 2450, null, 10);

insert into emp (empno, ename, job, mgr, hiredate, sal, comm, deptno)
values (7788, 'SCOTT', 'ANALYST', 7566, '1987-04-19', 3000, null, 20);

insert into emp (empno, ename, job, mgr, hiredate, sal, comm, deptno)
values (7839, 'KING', 'PRESIDENT', null, '1981-11-17', 5000, null, 10);

insert into emp (empno, ename, job, mgr, hiredate, sal, comm, deptno)
values (7844, 'TURNER', 'SALESMAN', 7698,'1981-09-08', 1500, 0, 30);

insert into emp (empno, ename, job, mgr, hiredate, sal, comm, deptno)
values (7876, 'ADAMS', 'CLERK', 7788, '1987-05-23', 1100, null, 20);

insert into emp (empno, ename, job, mgr, hiredate, sal, comm, deptno)
values (7900, 'JAMES', 'CLERK', 7698, '1981-12-03', 950, null, 30);

insert into emp (empno, ename, job, mgr, hiredate, sal, comm, deptno)
values (7902, 'FORD', 'ANALYST', 7566, '1981-12-03', 3000, null, 20);

insert into emp (empno, ename, job, mgr, hiredate, sal, comm, deptno)
values (7934, 'MILLER', 'CLERK', 7782, '1982-01-23', 1300, null, 10);

insert into salgrade (grade, losal, hisal) values (1, 700, 1200);
insert into salgrade (grade, losal, hisal) values (2, 1201, 1400);
insert into salgrade (grade, losal, hisal) values (3, 1401, 2000);
insert into salgrade (grade, losal, hisal) values (4, 2001, 3000);
insert into salgrade (grade, losal, hisal) values (5, 3001, 9999);

-- 每个部门的平均工资
SELECT deptno, AVG(sal) FROM EMP GROUP BY deptno;

-- 每个部门每种岗位的平均工资
SELECT deptno, job, AVG(sal) FROM EMP GROUP BY deptno, job;

-- 过滤分组结果(HAVING)
SELECT deptno, AVG(sal) AS avg_sal FROM EMP GROUP BY deptno HAVING avg_sal < 2000;

注: having 经常和 group by 搭配使用,作用是对分组进行筛选,作用有些像 where。

13. 查询执行顺序

SQL查询中各个关键字的执行先后顺序 from > on> join > where > group by > with > having > select > distinct > order by > limit 

14. 实战OJ推荐

批量插入数据_牛客题霸_牛客网

insert into actor values(1,'PENELOPE','GUINESS','2006-02-15 12:34:33');
insert into actor values(2,'NICK','WAHLBERG','2006-02-15 12:34:33');

找出所有员工当前薪水salary情况_牛客题霸_牛客网

select distinct(salary) from salaries order by salary desc;

查找最晚入职员工的所有信息_牛客题霸_牛客网

select * from employees order by hire_date desc limit 1;
select * from employees where hire_date = (select max(hire_date) from employees);
select * from employees where hire_date = (select distinct hire_date from employees order by hire_date desc limit 1 offset 2);

查找薪水记录超过15条的员工号emp_no以及其对应的记录次_牛客题霸_牛客网

select emp_no,count(emp_no) as t from salaries group by emp_no having t > 15;

从titles表获取按照title进行分组_牛客题霸_牛客网

select title,count(*) as t from titles group by title having t >=2;

国科大作业考试资料-人工智能原理与算法-2024新编-第十一次作业整理 1、有一位教授想知道学生是否睡眠充足。每天,教授观察学生在课堂 上是否睡觉,并观察他们是否有红眼。教授获得如下的领域知识: (1)没有观察数据时,学生睡眠充足的先验概率为0.7。 (2)给定学生前一天睡眠充足为条件,学生在晚上睡眠充足的概率是0.8;如果前一天睡眠不充足,则是0.3。 (3)如果学生睡眠充足,则红眼的概率是0.2,否则是0.7。 (4)如果学生睡眠充足,则在课堂上睡觉的概率是0.1,否则是0.3。 将这些信息形式化为一个动态贝叶斯网络,使教授可以使用这个网络从观察序列中进行滤波和预 阅读详情

相关推荐

机械臂速成小指南(八):标准DH法实战——从连杆坐标系到运动学方程

本文详细介绍了机械臂运动学建模中的标准DH法,从连杆坐标系的建立到运动学方程的求解,提供了实用的操作步骤和代码示例。通过DH参数表和变换矩阵的构建,帮助读者快速掌握机械臂运动学建模的核心技术,并解决实际应用中的常见问题。

oo7890的博客 211

MySQL:表的增删查改

面试题:SQL查询中各个关键字的执行先后顺序 from > on> join > where > group by > with > having > select > distinct > order by > limit 

weixin_51142926的博客 2432

[TI板]MSPM0G3507——keil环境配置+烧录配置+vscode配置+空工程迁移+点灯+芯片解锁教程

本文介绍了MSPM0G3507开发环境的配置与烧录方法。主要内容包括:1)下载安装芯片支持包和SDK开发工具;2)通过串口或DAPLink两种方式实现程序烧录,详细说明了UniFlash软件的使用步骤和常见问题解决方法;3)简要提及工程迁移和LED点灯等基础操作。文章提供了完整的开发环境搭建指南,涵盖从软件安装到实际烧录的全过程,并附有相关工具下载链接和操作截图,帮助开发者快速上手MSPM0G3507开发。

qq_23220445的博客 1万+

【MySQL】表的增删查改

想必大家在学校也学习过MySQL,可能学的懵懵懂懂,这个板块我们从入门开始,从最新的安装MySQL到学习MySQL语句,一步一步开始,一切都是新的,新的板块新的开始,大家一起努力,一起进步!!!​二。

AAlykk的博客 2200

【报错】sqli-labs靶场搭建出现“Unable to connect to the database: security”

搭建sqli-labs靶场时,“Unable to connect to the database: security”报错解决

九芒星的博客 2993

多路输出电源的交叉调整率:从理论到无源优化实践

本文深入探讨了多路输出电源中的交叉调整率问题,分析了其物理根源及无源优化方法。通过漏感与耦合的理论分析,结合加权反馈、电感耦合等五种无源优化技术,帮助工程师有效解决交叉调整率挑战。文章还以TDK-Lambda CUT75系列为例,展示了优化技术的实际应用与效果。

weixin_26886855的博客 281

[MySQL] MySQL 表的增删查改

本篇文章对mysql表的增删查改进行了详细的举例说明解释。对表的增删查改简称CRUD : Create(创建), Retrieve(读取),Update(更新),Delete(删除)。其中重点是对查询select语句进行了详细解释,并且通过多个实际例子来帮助你的理解。希望本篇文章会对你有所帮助。

weixin_67596609的博客 3755

Open3D点云数据处理(五):点云、mesh可视化(draw_geometries方法)

本文介绍了Open3D中的draw_geometries可视化方法,可以用于可视化点云和mesh。详细讲述了该方法的各个参数的作用,给出了代码示例。

孙悟空 3140

MySQL之约束和表的增删查改

约束以及数据库中表的增删查改即CRUD

weixin_74285822的博客 1273

OpenClaw插件开发指南:扩展AI智能体的无限可能

OpenClaw插件开发指南介绍了如何扩展AI智能体的功能。该插件系统支持多种类型(功能、集成、工具、界面、工作流插件),具有模块化、低耦合等优势。开发环境需要安装SDK和工具包,通过plugin.json配置插件信息,主文件实现核心功能。API提供智能体管理、任务执行等接口,示例演示了文本处理插件的创建流程。开发者可基于此框架灵活扩展OpenClaw的能力。

一键难忘的博客 561

人工智能机器学习基础篇】——深入详解强化学习 基础知识,理解马尔可夫决策过程(MDP)、策略、价值函数等关键概念

人工智能机器学习基础篇】——深入详解强化学习 基础知识,理解马尔可夫决策过程(MDP)、策略、价值函数等关键概念

编程技术探索者,分享C/C++、C#、Java、数据库等开发经验,聚焦实战技巧与AI兴趣,助力编程爱好者成长。 1927

【MySQL】——​​用一文领悟表的增删查改

在🔥《库操作&&表操作》🔥一文中,我们已经知道如何对表进行创建、修改、删除但那是对表的结构而言,具体怎么对表的数据进行操作,我们还没有讲解这也是本章的介绍对象——表的增删查改本文章带大家认识了表的增删查改的操作但要彻底熟悉,需要勤加练习,多多实操才是。

2402_85267481的博客 876

nuScenes数据集详细介绍

nuScenes网上介绍资料较多,但是大部分仅仅是对官网的翻译,缺乏各个文件的内在联系介绍。例如,nuScenes激光雷达的数据格式,点云包含哪几种属性。再比如,sample文件夹和sweeps文件夹下的文件关系,以及是如何在相关json文件中体现的。本文将详细介绍nuScenes数据集的各个部分。

叶子的博客 1万+

MySQL基础 [五] - 表的增删查改

不要单纯的认为,只有磁盘上表结构导入到mysql,真实存在的表才叫做表。中间筛选出来的,包括最终结果,全部都是逻辑上的表!“MySQL一切皆表”。也就是说未来只要我们处理好单表的CURD,所有的sql场景我们全部都能用统一的方式进行

2402_83315537的博客 1171

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

MySQL-表的增删查改

CRUD:Create(创建), Retrieve(读取),Update(更新),Delete(删除)

weixin_74865793的博客 475

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

MySQL表内容的增删查改

ASC为升序(从小到大)DESC为降序(从大到小)默认为ASC。

weixin_74310945的博客 1180

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

MySQL初阶 | 表的增删查改

关注我🌹,和我一起学习更多计算机的知识🔝🔝🔝。

mooridy的博客 1090

[MYSQL数据库]--表的增删查改和字段类型

对表的增删查改,字段的类型:tinyint,bit,float,decimal,字符,日期和时间,enum,set类型。

分享技术 2136
上一篇: MySQL表的约束
下一篇: MySQL内置函数
FirstFrost --sy
博客等级 码龄3年 371粉丝 68原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值