当前位置: 首页 > news >正文

SAS:PROC SQL和ANSI标准

文章来源于SAS HELP

  • PROC SQL 和ANSI SQL 的区别——图表和视图名称的作用域规则不同
    例1:匹配数据集相关名称
    当PROC SQL匹配数据集相关名称时,会依次进行3个步骤:1、有别名,用别名匹配;2、1匹配失败,在无别名的数据集中用数据集名匹配;3、2匹配失败,用有别名的数据集名匹配。
proc sql noprint;create table test asselect dm.subjid,1 as lmg length = 8from dm as dm,ae as aewhere dm.subjid = ae.subjidand	  dm.sex = 'M'and   not exists (select *from dm as dwhere d.subjid = dm.subjidand   strip(d.sex) <> 'F');
quit;

在not exist条件中,proc sql先用别名d去匹配(where筛选等号左边的条件),匹配成功;where筛选等号右边的条件dm.subjid属于有别名d,用dm匹配(属于前2个步骤都没有匹配到,用第3个步骤才成功匹配),也就等价于

where d.subjid = d.subjid
and   strip(d.sex) <> 'F'

继而等价于

where strip(d.sex) <> 'F'

注意:如果PROC SQL使用ISO/ANSI SQL:相关名称匹配标准2012,那么where等式右边的dm.subjid就可以用高等级select语句匹配,即从not exist内部查询语句中跳出到外部select语句中进行匹配

为了与ISO/ANSI SQL匹配规则一致,可以修改相应查询语句。比如在例1中确保外部作用域和内部作用域有不同的别名。

proc sql noprint;create table test asselect dm.subjid,1 as lmg length = 8from dm as d1,ae as aewhere d1.subjid = ae.subjidand	  dm.sex = 'M'and   not exists (select *from dm as d2where d2.subjid = d1.subjidand   strip(d2.sex) <> 'F');
quit;

例2:模糊引用
在相同的作用域内有两个相同的dm的引用,DBMS与ANSI SQL标准完全一致,因此会检测到dm.xxx模棱两可。但是对于PROC SQL来说却不会觉得模糊,因为按照例1的逻辑,会首先对有别的的数据集进行匹配,所以这里的where条件实际上筛选到的是来自ae数据集中筛选号长度大于3的筛选号。

proc sql noprint;create table test asselect dm.subjidfrom   dm,ae as dmwhere dm.length(subjid)>3;	
quit;

拓展:PROC SQL exists子查询
在这里插入图片描述

相关文章:

SAS:PROC SQL和ANSI标准

文章来源于SAS HELP PROC SQL 和ANSI SQL 的区别——图表和视图名称的作用域规则不同 例1&#xff1a;匹配数据集相关名称 当PROC SQL匹配数据集相关名称时&#xff0c;会依次进行3个步骤&#xff1a;1、有别名&#xff0c;用别名匹配&#xff1b;2、1匹配失败&#xff0c;在无…...

使用mysql_config_editor可以为特定的MySQL服务器或客户端程序设置登录路径

login_path 介绍 在 MySQL 中&#xff0c;login_path 通常不是 MySQL 服务器配置或 SQL 语句的一部分。但是&#xff0c;它经常与 MySQL 的命令行工具 mysql_config_editor 一起使用&#xff0c;这是一个允许用户安全地存储认证凭据&#xff08;如用户名、密码和连接参数&…...

gridview的模板按钮如何判断用户点击的是哪一行

在asp.net的 GridView 控件中&#xff0c;判断用户点击的是哪一行通常可以通过处理 GridView 的 RowCommand 事件来实现。RowCommand 事件会在 GridView 的每个按钮&#xff08;除非另有指定的CommandName&#xff09;被点击时触发&#xff0c;并且事件参数中包含了足够的信息来…...

虚拟化 之三 详解 jailhouse(ARM 平台)的构建过程、配置及使用

嵌入式平台下,由于资源的限制,通常不具备通用性的 Linux 发行版,各大主流厂商都会提供自己的 Linux 发行版。这个发行版通常是基于某个 Linux 发行版构建系统来构建的,而不是全部手动构建,目前主流的 Linux 发行版构建系统是 Linux 基金会开发的 Yocto 构建系统。 基本环…...

数据安全:Web3时代的隐私保护新标准

随着数字化时代的到来&#xff0c;我们的生活已经完全依赖于互联网和数据交换。然而&#xff0c;随之而来的是对个人隐私和数据安全的日益关注。在这个信息爆炸的时代&#xff0c;数据泄露、个人隐私侵犯和网络攻击等问题日益突出&#xff0c;而Web3技术的崛起正带来了一种全新…...

STM32串口不定长接收空闲中断

目录 1. 开启串口空闲中断2. 合理开关中断3. 串口发送函数 1. 开启串口空闲中断 最近接触到的 Modbus RTU 项目使用到了串口接收中断和空闲中断。记录一下 初始化可以直接套用正点原子的初始化&#xff0c;只需要添加一行即可 USART_ITConfig(USART1, USART_IT_IDLE, ENABLE)…...

Ubuntu 设置开机启动脚本

在/etc/systemd/system/目录下创建对应的server服务 如&#xff1a;/etc/systemd/system/test-script.service [Unit] DescriptionTest Script Service Afternetwork.target[Service] Typeoneshot ExecStart/path/to/test-script.sh[Install] WantedBymulti-user.target替换/…...

C# Task 包含 await ConfigureAwait CancellationTokenSource

Task以下是 Task 类的一些关键特性和用法&#xff1a;以下是一些使用 Task 的示例&#xff1a;创建并启动一个任务使用 await 等待任务完成处理任务异常使用 Task<TResult> 获取结果取消任务总结 await暂停方法执行&#xff1a;非阻塞调用&#xff1a;任务结果获取&#…...

Python数据分析与建模库-02科学计算库Numpy01-05合集

1、该视频主要讲述了南派&#xff08;NumPy&#xff09;的核心操作和数据结构&#xff0c;以及如何使用NumPy库读取和处理数据。 2、该视频主要讲述了在编程中&#xff0c;如何对数组或矩阵中的元素进行判断和操作&#xff0c;以及在单排中如何进行类型转换。 3、该视频主要讲…...

【前端项目笔记】1 登录与登出功能实现

项目笔记 ☆☆代表面试常见题 前后端分离&#xff1a;后端负责写接口&#xff0c;前端负责调接口。 登录/退出功能 登录业务流程 登录页面&#xff1a;用户名密码 调用后台接口进行验证 通过验证&#xff0c;根据后台响应状态跳到项目主页 登录业务相关技术点&#xff1…...

是字符串定义以及在C语言中字符串是如何表示的

字符串&#xff08;String&#xff09;是由零个或多个字符&#xff08;包括空格&#xff09;组成的有限序列&#xff0c;常用于文本数据的存储和处理。在编程中&#xff0c;字符串是常见的数据类型。 在C语言中&#xff0c;字符串不是一种内置的数据类型&#xff0c;但C语言提…...

辽宁普通测径仪升级智能测径仪后都有哪些改进?

关键字: 普通测径仪, 智能测径仪, 测径仪升级, 测径仪特点, 智能测径仪优势, 目前多数厂家测径仪的数据处理方式是单片机计算出最终结果&#xff0c;然后传输到工控机后期处理。这样的电路系统对轧钢现场的高温、高粉尘和强电磁干扰的环境适应性很差&#xff0c;使得同一厂家、…...

【微信小程序】事件分类以及阻止事件冒泡

在微信小程序中&#xff0c;事件分为冒泡事件和非冒泡事件两大类&#xff0c;它们的区别在于事件是否能从原始触发组件开始&#xff0c;向父级组件传播&#xff08;即“冒泡”&#xff09;。 冒泡事件&#xff1a;当一个组件上的事件被触发后&#xff0c;不仅当前组件会接收到这…...

踩坑!被node-sass折磨的一天

文章目录 被node-sass折磨的一天折磨过程了解原因注意事项 被node-sass折磨的一天 折磨过程 起因是要开发一个老项目&#xff0c;照常拉代码、下依赖、启动三步走 依赖开始下载不对了&#xff0c;以为是node版本问题&#xff0c;寻找node-sass对应的node版本 利用nvm&#…...

App UI 风格打造独特体验

App UI 风格打造独特体验...

【学习笔记8】阅读StyleID论文源码

论文【链接】 源码【链接】 一、DDIM eta ddim_step表示执行几轮去噪迭代&#xff0c;eta表示DDPM和DDIM的插值系数。当eta0时&#xff0c;为DDPM&#xff1b;当eta≠0时&#xff0c;为DDIM。 参考 DDIM 简明讲解与 PyTorch 实现&#xff1a;加速扩散模型采样的通用方法 【s…...

wordpress旅游网站模板

旅行社wordpress主题 简洁实用的旅行社wordpress主题&#xff0c;适用于旅行社建网站的wordpress主题模板。 https://www.jianzhanpress.com/?p4296 旅游WordPress主题 简洁实用的旅游WordPress主题&#xff0c;适合做旅游公司网站的WordPress主题模板。 https://www.jian…...

vs2019 c++20规范 STL 库中头文件 <atomic> 源码注释及探讨几个知识点

&#xff08;1 探讨一&#xff09; 模板类 atomic 的继承关系与数据结构如下&#xff1a; (2 探讨二 ) 可见 atomic 的 fetch_xx 函数&#xff0c;返回的都是 atomic 中存储的旧值。测试如下&#xff1a; 谢谢...

Flink任务如何跑起来之 2.算子 StreamOperator

Flink任务如何跑起来之 2.算子 StreamOperator 前文介绍了Transformation创建过程&#xff0c;大多数情况下通过UDF完成DataStream转换中&#xff0c;生成的Transformation实例中&#xff0c;核心逻辑是封装了SimpleOperatorFactory实例。 UDF场景下&#xff0c;DataStream到…...

学习笔记——路由网络基础——路由优先级(preference)

1、路由优先级(preference) 路由优先级(preference)代表路由的优先程度。当路由器从多种不同的途径获知到达同一个目的网段的路由(这些路由的目的网络地址及网络掩码均相同)时&#xff0c;路由器会比较这些路由的优先级&#xff0c;优选优先级值最小的路由。 路由来源的优先…...

数据预处理——调整方差、标准化、归一化(Matlab、python)

对数据的预处理&#xff1a; (a)、调整数据的方差&#xff1b; (b)、标准化&#xff1a;将数据标准化为具有零均值和单位方差&#xff1b;&#xff08;均值方差归一化(Standardization)&#xff09; (c)、最值归一化&#xff0c;也称为离差标准化&#xff0c;是对原始数据的…...

opencv_特征检测和描述

理解特征 寻找独特的特定模式或特定特征&#xff0c;可以轻松跟踪和比较。 拼图&#xff1a;在图像中搜索这些特征&#xff0c;找到它们&#xff0c;在其他图像中查找相同的特征并对齐它们。而已。 基本上&#xff0c;角被认为是图像中的好特征。 在本单元中&#xff0c;我…...

CID引流电商下的3C产品选品策略深度解析

​摘要&#xff1a;随着电商行业的迅猛发展和消费者需求的日益多样化&#xff0c;CID引流电商作为一种新兴的电商模式&#xff0c;逐渐受到了广泛关注。在这一模式下&#xff0c;3C产品作为高客单价、高技术含量的代表品类&#xff0c;其选品策略的制定显得尤为重要。本文将从多…...

DeepSORT(目标跟踪算法)中的状态向量与状态转移矩阵

DeepSORT&#xff08;目标跟踪算法&#xff09;中的状态向量与状态转移矩阵 flyfish 状态转移矩阵&#xff08;State Transition Matrix&#xff09;F的构造 这篇是一定要看的&#xff0c;拖到文章的最后部分&#xff0c;需要理解状态转移矩阵怎么来的&#xff0c;怎么是这个…...

李宏毅深度学习01——基本概念简介

视频链接 基本概念 Regression&#xff08;回归&#xff09;&#xff1a; 类似于填空 Classification&#xff08;分类&#xff09;&#xff1a; 类似于选择 Structure Learning&#xff08;机器学习&#xff09;&#xff1a; &#xff1f;&#xff1f; 机器学习找对应函数…...

TcpClient 服务器、客户端连接

TcpClient 服务器 TcpListener 搭建tcp服务器的类&#xff0c;基于socket套接字通信的 1 创建服务器对象 TcpListener server new TcpListener(IPAddress.Parse("127.0.0.1"), 3000); 2 开启服务器 设置最大连接数 server.Start(1000); 3 接收客户端的链接,只能…...

13大最佳工程项目管理系统软件盘点

国内外主流的13款工程项目管理系统软件&#xff1a;Worktile、中建软件、泛微建筑项目管理软件、LiquidPlanner、Wrike、建文软件、广联达、Microsoft Project、泛普软件、Procore、Buildertrend、Fieldwire、Autodesk Construction Cloud。 在快速变化的工程领域&#xff0c;有…...

SpringMVC:拦截器(Interceptor)

1. 简介 拦截器&#xff08;Interceptor&#xff09;类似于过滤器&#xff08;Filter&#xff09; Spring MVC的拦截器作用是在请求到达控制器之前或之后进行拦截&#xff0c;可以对请求和响应进行一些特定的处理。拦截器可以用于很多场景下&#xff1a; 1. 登录验证&#xf…...

【Python】selenium使用find_element时解决【NoSuchWindowException】问题的方法

NoSuchWindowException 是 Selenium WebDriver 中的一种异常&#xff0c;当尝试切换到一个不存在的窗口时&#xff0c;或者在尝试获取窗口句柄时窗口已经关闭或不存在&#xff0c;就会抛出这个异常。 以下是一些解决 NoSuchWindowException 的常见方法&#xff1a; 检查窗口是…...

PTA:7-188 水仙花数

作者 王秀秀 单位 山东交通学院 任务描述 本关任务&#xff1a;输出100到999之间的所有的“水仙花数”。所谓的“水仙花数”是指一个3位数&#xff0c;其各位数字立方和等于该数本身。 例如&#xff0c;153是一个水仙花数&#xff0c;因为 15313 53 33 提示 关键在于对一…...

长春最专业的网站建设/企业培训员工培训平台

转载于&#xff1a;http://20032334.iteye.com/blog/288989 格式&#xff1a; &#xff08;function(){ //代码 })();解释&#xff1a;这是相当优雅的代码&#xff08;如果你首次看见可能会一头雾水&#xff1a;&#xff09;&#xff09;&#xff0c;包围…...

企业网站建设制作/360优化大师最新版下载

第四章 对象与类 面向对象程序设计简称OOP&#xff0c;面向对象的程序是由对象组成的。 类是构造对象的模板或蓝图&#xff0c;对象中的数据称为实例域&#xff0c;操纵数据的过程称为方法。 对象有三个主要特性&#xff1a;1.对象的行为—可以对对象施加哪些操作&#xff0c;…...

招聘网官网/优化排名推广关键词

Swift之父Chris Lattner&#xff0c;也是LLVM之父&#xff0c;从2014年公布Swift后&#xff0c;版本一直不大稳定&#xff0c;在Swift3.0以后语法逐渐稳定&#xff0c;开发者对此比较青睐 Chris Lattner从苹果离职到了特斯拉&#xff0c;自己感觉不适合自己&#xff0c;结果又辗…...

做ppt用什么网站好/市场调研分析报告

本文最先发布在&#xff1a;如何在 Ubuntu 20.04 上安装 MySQL​www.itcoder.techMySQL是最流行的开源关系数据库管理系统。它速度快&#xff0c;容易使用&#xff0c;容易扩展&#xff0c;并且流行的LAMP和LEMP的一部分。这篇指南讲解了如何在 Ubuntu 20.04上安装和保护 MySQL…...

php企业网站无限制源码/免费网页在线客服系统

Docker是一个客户端-服务器架构&#xff0c;Docker客户端与守护进程进行通信&#xff0c;Docker守护进程大大提升了docker容器的构建和运行。Docker客户端和守护进程可以在同一个系统上运行&#xff0c;也可以远程连接Docker的守护进程。他们之间使用Rest API&#xff0c;通过U…...

建设网站的技术手段/哈尔滨网络推广优化

在子类继承父类中&#xff0c;一般有一行super的语句&#xff0c;需要记住三种使用方法&#xff1a; 1、super.变量/对象名&#xff1b; 使用这种方法可以直接访问父类中的变量或对象&#xff0c;进行修改赋值等操作 2、super.方法名()&#xff1b; 直接访问并调用父类中的…...