PostgreSQL15——集合运算

【数据库】集合运算UNION,INTERSECT,EXCEPT,JOIN 7.1 表的加减法 7.3 表之间的加法运算UNION(求并集) postgres=# SELECT product_id,product_name postgres-# FROM Product postgres-# UNION postgres-# SELECT product_id,product_name postgres-# FROM Product2; product_id | product_name ------------+-------------- 0001 | T恤 阅读详情

数据库中的表(table)本质上就是由行(row)组成的集合。因此,PostgreSQL 同样支持集合论中的集合操作,包括并集(UNION)、交集(INTERSECT)和差集(EXCEPT):

  • UNION 操作符用于将两个查询结果合并成一个结果集,返回出现在第一个查询或者出现在第二个查询中的数据;
  • INTERSECT 操作符用于返回两个查询结果中的共同部分,即同时出现在第一个查询结果和第二个查询结果中的数据;
  • EXCEPT 操作符用于返回出现在第一个查询结果中,但不在第二个查询结果中的数据。

在这里插入图片描述

集合操作符要求参与运算的两个查询结果具有相同数量的列,以及对应列的类型必须匹配或兼容。

一、UNION

UNION 操作符用于将两个查询结果合并成一个结果集,返回出现在第一个查询或者出现第二个查询中的数据:

SELECT column1, column2
FROM table1
UNION [DISTINCT | ALL]
SELECT col1, col2
FROM table2;

其中,DISTINCT 表示将合并后的结果集进行去重;ALL 表示保留结果集中的重复记录;如果省略,默认为 DISTINCT。例如:

SELECT * FROM (values(1),(2)) t1(n)
union
SELECT * FROM (values(1),(3)) t2(n);

在这里插入图片描述

SELECT * FROM (values(1),(2)) t1(n)
union all
SELECT * FROM (values(1),(3)) t2(n);

在这里插入图片描述

第一个查询结果中只有一个数字 1,第二个查询结果中保留了重复的数字 1。

二、INTERSECT

INTERSECT 操作符用于返回两个查询结果中的共同部分,即同时出现在第一个查询结果和第二个查询结果中的数据:

SELECT column1, column2
FROM table1
INTERSECT [DISTINCT | ALL]
SELECT col1, col2
FROM table2;

其中,DISTINCT 表示将合并后的结果集进行去重;ALL 表示保留结果集中的重复记录;如果省略,默认为 DISTINCT。例如:

SELECT * FROM (values(1),(2)) t1(n)
intersect
SELECT * FROM (values(1),(3)) t2(n);

在这里插入图片描述

SELECT * FROM (values(1),(1),(2)) t1(n)
intersect all
SELECT * FROM (values(1),(3)) t2(n);

在这里插入图片描述

SELECT * FROM (values(1),(1),(2)) t1(n)
intersect all
SELECT * FROM (values(1),(1),(3)) t2(n);

在这里插入图片描述

第一个查询结果中只有一个数字 1;第二个查询虽然使用了 ALL 选项,结果也只有一个 1;第三个查询结果中有两个 1。

三、EXCEPT

EXCEPT 操作符用于返回出现在第一个查询结果中,但不在第二个查询结果中的数据:

SELECT column1, column2
FROM table1
EXCEPT [DISTINCT | ALL]
SELECT col1, col2
FROM table2;

其中,DISTINCT 表示将合并后的结果集进行去重;ALL 表示保留结果集中的重复记录;如果省略,默认为 DISTINCT。例如:

SELECT * FROM (values(1),(1),(2)) t1(n)
EXCEPT
SELECT * FROM (values(1),(3)) t2(n);

在这里插入图片描述

SELECT * FROM (values(1),(1),(2)) t1(n)
EXCEPT ALL
SELECT * FROM (values(1),(3)) t2(n);

在这里插入图片描述

第一个查询结果中没有数字 1;第二个查询结果中保留了一个数字 1。

四、分组与排序

对于分组操作,集合操作符中的每个查询都可以包含一个 GROUP BY,不过它们只针对各自进行分组;如果想要对最终结果进行分组,需要在外层嵌套一个 SELECT 语句:

SELECT n, count(*) FROM (
SELECT * FROM (values(1),(2)) t1(n)
UNION ALL
SELECT * FROM (values(1),(3)) t2(n)) t
GROUP BY n;

在这里插入图片描述

如果要对集合运算的数据进行排序,需要将 ORDER BY 子句写在最后;集合操作符中的第一个查询中不能出现排序操作:

SELECT * FROM (values(1),(2)) t1(n)
UNION ALL
SELECT * FROM (values(1),(3)) t2(n)
ORDER BY n;

在这里插入图片描述

五、集合操作优先级

PostgreSQL 支持同时使用多个集合操作符,此时我们需要注意它们的优先级:

SELECT column1, column2
FROM table1
UNION [DISTINCT | ALL]
SELECT col1, col2
FROM table2
INTERSECT [DISTINCT | ALL]
SELECT c1, c2
FROM table3;

多个集合操作符使用以下执行顺序:

  • 相同的集合操作符按照从左至右的顺序执行;
  • INTERSECT 的优先级高于 UNION 和EXCEPT;
  • 使用括号可以修改集合操作的执行顺序。

以下示例使用了两个 UNION 操作符,其中一个增加了 ALL 选项:

SELECT * FROM (values(1)) t1(n)
UNION ALL
SELECT * FROM (values(1)) t2(n)
UNION
SELECT * FROM (values(1)) t3(n);

在这里插入图片描述

查询最终的结果只有一个数字 1,因为最后的 UNION 去除了重复的数据。

以下示例使用了两个不同的集合操作符:

SELECT * FROM (values(1)) t1(n)
UNION ALL
SELECT * FROM (values(1)) t2(n)
INTERSECT
SELECT * FROM (values(1)) t3(n);

在这里插入图片描述

查询最终的结果包含了两个数字 1,因为 INTERSECT 先执行,最后的 UNION ALL 保留了重复的数据。

最后看一个使用括号的示例:

(
SELECT * FROM (values(1)) t1(n)
UNION ALL
SELECT * FROM (values(1)) t2(n)
)
INTERSECT
SELECT * FROM (values(1)) t3(n);

在这里插入图片描述

SQL集合运算符实战:UNION、INTERSECT、EXCEPT高效替代JOIN SQL集合运算(UNION、INTERSECT、EXCEPT)是关系代数在数据库中的原生实现,本质是对行集合执行并、交、差操作,区别于JOIN的笛卡尔积+筛选逻辑。其技术价值在于规避连接开销、天然处理NULL相等性、避免重复膨胀与谓词下推失效,显著提升查询可读性与执行效率。典型应用场景包括用户分群(如流失用户=近30天订单−近7天订单)、多源数据合并去重、跨表存在性校验等。尤其在数据工程、BI分析和实时报表中,合理选用EXCEPT替代LEFT JOIN+IS NULL、用INTERSECT替代INNER J 阅读详情

相关推荐

SQL集合运算符深度解析:UNION、INTERSECT、EXCEPT原理与避坑实战

SQL集合运算符(如UNION、INTERSECT、EXCEPT)常被误认为简单语法糖,实则是涉及行级多重集操作、执行计划优化与NULL语义安全的关键技术。其底层并非数学集合,而是基于ANSI SQL标准的multiset行为,直接影响去重排序、内存分配和结果确定性。理解各数据库对INTERSECT的物理算子实现差异(如PostgreSQL哈希半连接 vs MySQL排序合并),可规避4.7倍性能落差;掌握EXCEPT在NULL比较中返回UNKNOWN的规则,能避免用户分群漏判等线上事故。适用于日志合并、存

weixin_33785108的博客 357

postgresql-集合运算

【代码】postgresql-集合运算。

Java_Fly1的博客 721

SQL集合运算符实战:UNION、INTERSECT、EXCEPT高效处理去重与交差集

SQL集合运算符是关系型数据库中处理‘集合间关系’的基础能力,其核心在于将查询结果视为数学集合,通过UNION(并集)、INTERSECT(交集)、EXCEPT(差集)直接表达业务语义,而非依赖JOIN的行级关联逻辑。相比LEFT JOIN + IS NULL或NOT IN等模拟方案,原生集合运算符在语义清晰性、NULL安全性和执行效率上具备显著优势——尤其在用户去重、沉默用户识别、数据一致性校验等典型场景中,可规避隐式转换、状态歧义和哈希溢出等常见陷阱。现代数据库(PostgreSQL/SQL Serve

weixin_33743248的博客 412

PostgreSQL-06-入门篇-集合运算

UNION运算符将两个或多个SELECT语句的结果集组合成一个结果集。下面说明了组合两个查询的结果集的UNION要使用UNION两个查询的选择列表中列的数量和顺序必须相同。数据类型必须兼容。UNION运算符从组合数据集中删除所有重复行。要保留重复的行,请改用UNION ALL。下面的维恩图说明了UNION与UNION和EXCEPT运算符类似,PostgreSQL 的INTERSECT运算符将两个或多个SELECT语句的结果集组合成一个结果集。INTERSECT运算符返回两个结果集中可用的任何行。

被拯救的威尼斯的博客 1904

【postgresql 基础入门】多表联合查询 join与union 并,交,差等集合操作,两者的区别之处

postgresql 数据库是一款通用的关系型数据,在开源数据库中能与商业数据媲美,在业界也越来越流行。因为是开源数据库,不仅公开源码,还有很多使用案例,好用的插件,所以它的慢慢变成了数据库的先驱和标准,通过postgresql可以很好从使用到原理,彻底搞懂;如果是学习编程,也可以学到丰富的编程知识,数据结构,编程技巧,它里面还有很多精妙的架构设计,分层思想,可以灵活定制的思想。

一个追逐梦想的码农 1万+

《PostgreSQL开发指南》第19篇 集合操作

介绍 PostgreSQL 中的集合操作符,UNION 用于将两个查询结果合并成一个结果集,返回出现在第一个查询或者出现在第二个查询中的数据 ;INTERSECT 用于返回两个查询结果中的共同部分,即同时出现在第一个查询结果和第二个查询结果中的数据; EXCEPT 用于返回出现在第一个查询结果中,但不在第二个查询结果中的数据。

Tony.Dong的专栏 2824

PostgreSQL学习笔记(五):查询函数、谓词、case表达式、集合运算、VACUUM

PostgreSQL:查询函数、谓词、case表达式、集合运算、VACUUM

fatestranger的博客 1273

《PostgreSQL开发指南》第16篇 常用函数(一)

本文主要介绍 PostgreSQL 中常用的数学函数和字符函数。

Tony.Dong的专栏 3787

postgresql语法mysql语法_postgreSQL最全语法整理(可作为工具查询使用)

一、查询基础1、连接数据库C:\PostgreSQL\9.5\bin\psql.exe -U postgres -d shop2、检查数据库连接是否成功SELECT 1;3、创建数据库CREATE DATABASE shop;4、退出数据库口令\q5、\d 数据库 ——得到所有表的名字6、\d 表名 —— 得到表结构7、创建表CREATE TABLE ( , , , ,..., ,……);...

weixin_34010875的博客 1289

大牛总结的PostgreSQL开发指南

本指南目的在于经验总结, 帮助PostgreSQL使用者快速入门,在开发及管理过程中有章可循:命名规范Column设计 Constraints 设计Index 设计关于NULL开发相关规范 管理相关规范

使用psql,包括使用psql选择、删除、查询、投影

使用psql,包括使用psql选择、删除、查询、投影

postgreSQL语法

(2) 字符串类型的数据原则上按字典的顺序排序,不能与数字的大小顺序混淆,如’1-3‘

H_0521的博客 2175

RGB接口电容触摸屏驱动(一)模块介绍

RGB接口电容触摸屏驱动(一)模块介绍

杰克拉力船长个人博客 7878

PostgreSql 常用聚合函数

PostgreSQL聚合函数示例展示了15种常用统计方法。基础统计包含count、sum、avg等;扩展统计计算标准差和方差;位运算聚合处理按位操作;字符串和JSON聚合实现数据组合;有序集合函数计算百分位数和众数;假设集合分析数据分布。示例使用临时表demo(id,v,t),包含3条记录,其中v字段含NULL值。所有功能均基于PG15原生支持,无需额外扩展。结果表清晰展示各函数输出,如count(*)返回3而count(v)返回2(忽略NULL),string_agg生成"a,b,c"

人之功成皆凭己为,何来侥幸之说! 348

APK静态分析(取证角度)——理论部分

APP是指应用程序(Application),是指能够在手机、平板电脑、电脑等移动设备上运行的软件。APP可以帮助用户进行各种功能操作,如社交媒体、游戏、购物、学习、工作等。用户可以通过应用商店或者在线下载安装APP,然后在设备上使用它们。APP的种类非常丰富,能够满足用户不同的需求和兴趣。

currify的博客 3208

自动换挡频率计的设计精髓:如何用数字电路优雅地解决量程切换难题

本文深入解析了自动换挡频率计的设计精髓,重点探讨如何利用数字电路优雅解决量程切换难题。通过74系列通用数字集成电路构建智能化的自动量程切换系统,详细介绍了状态检测、决策逻辑和档位执行等核心模块的设计方法,并对比了不同实现方案的优劣,为电子测量领域的工程师提供了实用的硬件设计参考。

weixin_27869497的博客 407

PostgreSQL 高阶函数详解:全面深入的功能与实用示例

本文详细介绍了 PostgreSQL 的各种高阶函数,涵盖了递归查询、数学函数、集合操作符、字符串函数、JSON 函数、时间函数、聚合函数以及地理空间函数。每个类别下的函数都配有详细的示例代码和解释,以帮助你更好地理解和应用这些功能。通过掌握这些高阶函数,你可以更高效地处理和分析数据,满足复杂的数据处理需求。无论是处理层次结构数据、进行数学计算、操作字符串、管理 JSON 数据、处理时间和日期、进行数据汇总,还是处理地理空间数据,PostgreSQL 的高阶函数都能为你提供强大的支持。

微笑听雨 2174

FLUENT UDF编译及蒸发冷凝相关问题

蒸发冷凝与相间传质

weixin_48029137的博客 1万+

SQL编程大赛第5名周仟荣:用 PostgreSQL 位运算解决数独问题,碾压常规解法!

2025年NineData第三届数据库编程大赛圆满落幕,本届赛事以"一条SQL解数独"为赛题。来自东风日产的选手周仟荣获得第五名,他使用PostgreSQL数据库,通过位掩码技术实现高效数独求解。其方案采用分流策略:简单题快速扫描,难题使用MRV回溯剪枝,并运用PostgreSQL特有语法优化性能,最终以82.3分完成1万级数据处理仅耗时15.933秒。该方案展示了数据库编程在算法优化和性能调优方面的创新应用。

云原生智能数据管理平台 813

手把手教你用Gazebo和VINS-MONO搞定VIO SLAM仿真(附Realsense D435i模型配置)

本文详细介绍了如何使用Gazebo和VINS-MONO构建VIO SLAM仿真环境,包括Realsense D435i模型的配置与集成。通过实战指南,帮助开发者快速搭建高保真仿真平台,优化VIO性能,并解决常见问题,适用于机器人感知与定位导航领域。

weixin_30682415的博客 159

麒麟操作系统安装达梦数据库ARM版

Linux安装达梦数据库ARM版

运维@小兵的博客 8769

PostgreSQL——数据查询

包含星号通配符和选字段列表,表示查询所有的字段,表示查询指定的字段。字段列至少包含一个字段名称,如果要查询多个字段,多个字段之间用逗号隔开,最后一个字段后不要加逗号。 :表1和表2表示查询数据的来源,可以是单个或者多个。 是可选项,如果选择该项,[查询条件]将限定查询行必须满足的查询条件 该子句告诉PostgreSQL如何显示查询出来的数据,并按照指定的字段分组 该子句告诉PostgreSQL按什么样的顺序显示查询出来的数据,可以进行的排序有:、 该子句告诉PostgreSQL每次显示查询出来的数据条数。

吴声子夜歌的博客 1344

从仿真到打样:PMOS栅极泄放电路设计全流程复盘与三个踩坑点总结

本文详细复盘了PMOS栅极泄放电路从仿真到打样的全流程设计,重点总结了三个关键踩坑点:三极管BE结过压击穿、静态功耗超标和栅极振荡现象。通过优化缓启动电路、改进保护设计和布局调整,最终实现18ms开通时间、190μs关断时间和8μA静态功耗的工业级性能指标,为类似电源开关设计提供实用参考。

weixin_28693683的博客 371

PostgreSQL入门到精通.pdf

主要面向 PostgreSQL 初级 DBA 和开发人员,内容包括:PostgreSQL 介绍和安装,用户和角色、数据库与模式的管理、表空间与表的维护、数据库的备份与恢复、SQL 查询、常用函数、DML 语句,以及一些高级功能,例如通用表表达式、窗口函数、数据库事务、索引优化、视图、存储过程/函数、触发器以及 Java、Python、PHP 应用程序编程接口等。

发现生活,分享智慧,一起成长! 3213

继电器控制LED灯具导致触点烧蚀粘连的解决办法

继电器控制LED灯具导致触点烧蚀粘连的解决办法

2700

深度学习工具包 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")

PostgreSQL系列教程

转载PostgreSQL函数和运算符(二) 7.7模式匹配<br /> PostgreSQL 提供了三种模式匹配的方法:SQLLIKE运算符、SIMILAR TO运算符(SQL:1999定义的)和POSIX风格的正则表达式。<br /> 提示: 如果上面的三种模式匹配方法还不能满足应用程序的要求,可以用 Perl 或 Tcl 写一个用户自定义函数。7.7.1LIKE<br />string LIKE pattern [ ESCAPE esc...

lgxzzz的博客 511

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

上一篇: PostgreSQL15——子查询
下一篇: PostgreSQL15——通用表表达式(CTE)
吴声子夜歌
博客等级 码龄9年 2688粉丝 2268原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值