Qlik Sense : where exists

什么是Exists函数

Exists() 用于确定是否已经将特定字段值加载到数据加载脚本中的字段。此函数用于返回 TRUE 或 FALSE,这样它可以用于 LOAD 语句或 IF 语句中的 where 子句。

信息注释您也可使用 Not Exists() 来确定是否尚未加载字段值,但是如果要在 where 子句中使用 Not Exists(),建议您小心。Exists() 函数在当前表格中测试之前加载的表格和之前加载的值。因此,仅加载第一次出现的值。如果遇到第二次出现的值,值已经被加载。有关更多信息,请查看示例。

语法:  

Exists(field_name [, expr])

返回数据类型: 布尔值

参数:  

参数
参数说明
field_name

您希望在其中搜索值的字段的名称。您可使用没有引号的确切字段名称。

字段必须已经由脚本加载。这意味着您无法在脚本中进一步往下引用在子句中加载的字段。

expr

您希望检查值是否存在。您可使用引用当前加载语句中一个或数个字段的确切值或表达式。

信息注释您无法引用未包含在当前加载语句中的字段。

该参数为可选。如果您忽略它,函数将检查当前记录中的 field_name 的值是否已存在。

示例和结果:

示例 1 Field

Exists (Employee)

如果当前记录中的字段值 Employee 已存在于任何以前已读入的包含该字段的记录,则返回 -1 (True)。

语句 Exists (Employee, Employee) 和 Exists (Employee) 功能相同。

示例 2 Filed,Value

Exists(Employee, 'Bill')

如果在字段 Employee(员工)的当前内容中发现字段值 'Bill',则返回 -1 (True)。

示例 3 Where Exist

//zhengkai.blog.csdn.netEmployees:
LOAD * inline [
Employee|ID|Salary
Bill|001|20000
John|002|30000
Steve|003|35000
] (delimiter is '|');Citizens:
Load * inline [
Employee|Address
Bill|New York
Mary|London
Steve|Chicago
Lucy|Madrid
Lucy|Paris
John|Miami
] (delimiter is '|') where Exists (Employee);Drop Tables Employees;

由此得到表格,您可借助维度Employee 和 Address 在表格可视化中使用该表格。

where 子句:where Exists (Employee),是指只能从表格 Citizens(市民)将同时位于 Employees(员工)中的姓名加载到新表格。Drop 语句删除表格 Employees(员工)以避免混淆。

结果
EmployeeAddress
BillNew York
JohnMiami
SteveChicago

示例 4 Where Not Exist

Employees:
Load * inline [ 
Employee|ID|Salary
Bill|001|20000
John|002|30000
Steve|003|35000
] (delimiter is '|');Citizens:
Load * inline [
Employee|Address
Bill|New York
Mary|London
Steve|Chicago
Lucy|Madrid
Lucy|Paris
John|Miami
] (delimiter is '|') where not Exists (Employee);Drop Tables Employees;

where 子句包括 not: where not Exists (Employee)。

这意味着只能从表格 Citizens(市民)将不在 Employees(员工)中的姓名加载到新表格。

请注意在 Citizens(市民)中对于 Lucy 有两个值,但是在结果表格中仅包含了一个。当您加载带值 Lucy 的第一行时,其包含在 Employee 字段中。因此,当检查第二行时,已存在值。

结果
EmployeeAddress
MaryLondon
LucyMadrid

示例 5 Where Not Exist 裁剪

该示例示出如何加载所有值。

Employees:
Load Employee As Name;
LOAD * inline [
Employee|ID|Salary
Bill|001|20000
John|002|30000
Steve|003|35000
] (delimiter is '|');Citizens:
Load * inline [
Employee|Address
Bill|New York
Mary|London
Steve|Chicago
Lucy|Madrid
Lucy|Paris
John|Miami
] (delimiter is '|') where not Exists (Name, Employee);Drop Tables Employees;

要得到 Lucy 的所有值,您需要进行两项更改:

  • 在 Employee 重命名为 Name 的位置插入了 Employees 表的前置 Load。

    Load Employee As Name;

  • 在 Citizens 中将 Where 条件更改为:

    not Exists (Name, Employee).

这将为 Name 和 Employee 创建字段。如果检查带 Lucy 的第二行,它仍未存在于 Name(名称)中。

结果
EmployeeAddress
MaryLondon
LucyMadrid
LucyParis

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/2776244.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

那些 C语言指针 你不知道的小秘密 (3)

本篇会加入个人的所谓‘鱼式疯言’ ❤️❤️❤️鱼式疯言:❤️❤️❤️此疯言非彼疯言 而是理解过并总结出来通俗易懂的大白话, 我会尽可能的在每个概念后插入鱼式疯言,帮助大家理解的. 🤭🤭🤭可能说的不是那么严谨.但小编初心是能让更多人能…

正版软件 - Proxyman:让网络调试变得更智能、更高效

在软件开发的世界里,网络调试一直是开发者和测试工程师的痛点。传统的调试工具往往操作复杂,界面不够直观,而且性能上也难以满足现代应用的需求。今天,我要向大家介绍一款名为Proxyman的网络调试工具,它以其简洁的界面…

ssm+vue的医药垃圾分类管理系统(有报告)。Javaee项目,ssm vue前后端分离项目。

演示视频: ssmvue的医药垃圾分类管理系统(有报告)。Javaee项目,ssm vue前后端分离项目。 项目介绍: 采用M(model)V(view)C(controller)三层体系结…

C语言笔试题之两数相加(多次反转链表实现)

实例要求: 1、给定两个非空链表(l1和l2)来代表两个非负整数;2、数字最高位位于链表开始位置;3、它们的每个节点只存储一位数字;4、将这两数相加会返回一个新的链表; 案例展示: 实例…

MySQL学习记录——칠 表操作

文章目录 1、了解2、创建和插入1、基本创建和插入2、插入并更新on duplicate3、插入并替换replace 3、Retrieve1、查询select2、条件查询where3、结果排序order by4、限制行数limit 4、更新Update5、删除delete6、去重7、聚合函数(5个)1、count2、sum3、…

【蓝桥杯单片机记录】IO基础与LED控制

目录 一、IO基础 1.1 IAP15F2K61S2芯片原理图 1.2不同工作模式 二、新建工程的一些补充 2.1 keil中没有IAP15F2K61S2的头文件 解决:在isp软件中找到如下​编辑 2.2keil中的芯片选择 2.3推荐字体 三、sbit关键字 四、LED控制 4.1原理图 4.2不能直接通过IO…

Token、Tokenization 和张量之间的关系

输入经过Tokenization、Embedding和Positional Encoding后,最终构建为张量,给后续的计算和处理带来很多优势。 1. tokenization和张量 在自然语言处理(NLP)领域中,tokenization 是文本预处理的重要步骤之一&#xff0…

【漏洞复现】SpringBlade export-user接口存在SQL注入漏洞

漏洞描述 SpringBlade 是一个由商业级项目升级优化而来的微服务架构 采用Spring Boot 2.7 、Spring Cloud 2021 等核心技术构建,完全遵循阿里巴巴编码规范。提供基于React和Vue的两个前端框架用于快速搭建企业级的SaaS多租户微服务平台。SpringBlade export-user接口存在SQL注…

【踏雪无痕的痕一】——认知的心病

目录 一、背景介绍二、思路&方案三、过程1.教育是最大的"炸片"2.逻辑对等性的认知(时间的保证)3.不要去猜一个人怎么想,要看一个人怎么做4.改变一个人的基础5.你想过和你能过上什么生活完全取决于你自己 四、总结 一、背景介绍 大多数人都只愿意看到…

Blazor Wasm Google 登录

目录: OpenID 与 OAuth2 基础知识Blazor wasm Google 登录Blazor wasm Gitee 码云登录Blazor SSR/WASM IDS/OIDC 单点登录授权实例1-建立和配置IDS身份验证服务Blazor SSR/WASM IDS/OIDC 单点登录授权实例2-登录信息组件wasmBlazor SSR/WASM IDS/OIDC 单点登录授权实例3-服务端…

给大家拜年啦!最全科研资料,新年促销优惠!机器学习预测全家桶/故障诊断全家桶/改进算法/Python,Matlab代码...

最近后台有不少小伙伴问到,新年有没有什么优惠价,您这也不搞个活动吗! 本期作者郑重推出几个比较受欢迎的全家桶!一律7折优惠!每个商品仅限5次购买机会,也就是说,满5个人后,该商品会…

Stable Diffusion 模型下载:GhostMix(幽灵混合)

文章目录 模型介绍生成案例案例一案例二案例三案例四案例五案例六案例七案例八案例九案例十 下载地址 模型介绍 GhostMix 是绝对让你惊艳的模型,也是自己认为现在最强的2.5D模型。我认为模型的更新应该是基于现有的画面整体不大变的前提下,提高模型的成…

使用Arcgis裁剪

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、掩膜提取二、随意裁剪三、裁剪 前言 因为从网站下载的是全球气候数据,而我们需要截取成中国部分,需要用到Arcgis的裁剪工具 一、掩…

零基础学Python(9)— 流程控制语句(下)

前言:Hello大家好,我是小哥谈。流程控制语句是编程语言中用于控制程序执行流程的语句,本节课就带大家认识下Python语言中常见的流程控制语句!~🌈 目录 🚀1.while循环 🚀2.for循环 &#x1…

嵌入式中SolidWorks2022 安装教程

软件介绍 SolidWorks是一款专业的三维3D设计软件,功能强悍,支持分布式数据管理,支持直接处理网格数据,提供更多的数据的灵活性,使用起来高效便捷。可以帮助用户轻松进行3D CAD设计、机械设计、钣金设计、模拟设计、电气…

[CUDA手搓]从零开始用C++ CUDA搭建一个卷积神经网络(LeNet),了解神经网络各个层背后算法原理

文章目录 前言一、所需环境二、实现思路2.1. 定义了LeNet网络模型结构,并训练了20次2.2 以txt格式导出训练结果(模型的各个层权重偏置等参数)2.3 (可选)以pth格式导出训练结果,以方便后期调试2.4 C CUDA要做的事 三、C CUDA具体实现3.1 新建.cu文件并填好…

Android SDK 上传 Maven 喂奶级教程

最近领导给安排了个任务,让我把我们现有的一个 SDK 上传到 Maven 上去,方便客户直接用 gradle 依赖,不再需要拷贝 jar 和 so 了,此前我也看过一些相关的文章我想问题也不大,觉得工作量也就一两天的事情,主要…

Peter算法小课堂—枚举优化

哈哈哈,新年快乐!这一次Peter将要给大家讲一讲轻松、摆烂的算法—枚举!咋就是说呀,枚举这个玩意我语法就会了。但大家想想,咱们CSP考试时(除了没过初赛的)只给1秒,大家想想&#xff…

STM32Cubmax AD采集

一、基本概念 二、项目 AD函数结构体 typedef struct { uint32_t Mode; // ADC 工作模式选择 FunctionalState ScanConvMode; /* ADC 扫描(多通道) 或者单次(单通道)模式选择 */ FunctionalState ContinuousConvMode; // ADC 单…

【深度学习】pytorch 与 PyG 安装(pip安装)

【深度学习】pytorch 与 PyG 安装(pip安装) 一、PyTorch安装和配置(一)、安装 CUDA(二)、安装torch、torchvision、torchaudio三个组件(1)下载镜像文件(2)创建…