如何将 Snowflake 中的数组与不同的值连接起来?

2024-06-12

我有一个 MERGE 场景ARRAY_AGG()主脚本中的函数。一旦我有了匹配项,我想组合源表和目标表中的数组,但不想添加现有值。我看过使用ARRAY_CAT()但它没有返回预期的输出

这是查询:

SELECT
  ARRAY_CAT(ARRAY_CONSTRUCT('VALUE 1', 'VALUE 2'), ARRAY_CONSTRUCT('VALUE 1', 'VALUE 3')) arr_col

但这返回:

ARR_COL
[ "VALUE 1", "VALUE 2", "VALUE 1", "VALUE 3" ]

我需要的是:

ARR_COL
[ "VALUE 1", "VALUE 2", "VALUE 3" ]

除了转换为字符串、使用正则表达式删除重复项然后拆分为数组之外,是否有一种简单的方法可以实现此目的?


Use ARRAY_DISTINCT after ARRAY_CAT inline:

SELECT
  ARRAY_DISTINCT(ARRAY_CAT(ARRAY_CONSTRUCT('VALUE 1', 'VALUE 2'), ARRAY_CONSTRUCT('VALUE 1', 'VALUE 3'))) as arr_col

returns ["VALUE 1", "VALUE 2", "VALUE 3"]

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何将 Snowflake 中的数组与不同的值连接起来? 的相关文章

  • 通过 phpMyAdmin 在 MySQL 中创建 id 字段时是否必须指定整数长度?

    我看到有人在教程中没有设置长度 而是专门为了统计用户总数而设置为自动递增 我一直习惯于总是指定长度 因为我认为这是强制性的 但我想问我是否可以将其留空 除非它特别是始终设置长度的日期或密码等 如果我不确定的话 我曾经将其设置为11位或更多
  • SQL - 选择具有最大值的所有行

    我有这个 SQL 查询 SELECT id COUNT AS price FROM SELECT FROM rt WHERE somecondition AS st JOIN tt ON st id tt id GROUP BY id 现在
  • 当在另一个表中找到匹配项时更新列

    我尝试使用表 A 中与 Passport no 匹配的值更新表 B 中的列 下面是我的sql查询 update tabel b set b country id a national id from table a a join tabel
  • Snowflake没有扣除Parquet中按列分区

    我对 Snowflake 的新功能 Infer Schema 表功能有疑问 INFER SCHEMA 函数在 parquet 文件上表现出色 并返回正确的数据类型 但是 当 parquet 文件被分区并存储在 S3 中时 INFER SCH
  • SQL IN 子句比单个查询慢

    我正在使用 Hibernate 的 JPA 实现和 MySQL 5 0 67 MySQL 配置为使用 InnoDB 在执行 JPA 查询 转换为 SQL 时 我发现使用IN子句比执行单个查询慢 例子 SELECT p FROM Person
  • 当 SQL 包含变量时在 pgAdmin 中调试 SQL

    在 SQL Server 中 我可以从应用程序中复制 sql 代码并将其粘贴到 SSMS 中 声明并分配 sql 中存在的变量并运行 是的 很棒的调试场景 例如 请注意 我很生疏 语法可能不正确 declare x as varchar 1
  • SSRS报告不显示数据

    我刚刚创建了 SQL Server 2005 SSRS 报告 数据未显示在预览窗格中 数据集是根据字符串参数从存储过程正确填充的 我可以在数据窗格中执行它 在预览窗格中运行报表时 会显示正确的行数 但单元格的内容不包含任何数据 源数据集基于
  • SQL CASE 语句

    我有以下查询 我想将它们放入 sql CASE 语句中 这样我只有一个查询 但我不知道该怎么做 有人可以帮助我吗 IF SELECT EtlLoadId FROM ssislogs audit processcontrol WHERE Su
  • 选择语句REF oracle

    我需要一些帮助来创建将使用引用的选择语句 我设法很好地插入了值 但是当我尝试使用 where 语句提取值时 输出要么是数据类型错误 要么会输出两个表以及它们都包含的数据 这只是一个例子 Create or replace table1 Ty
  • 如何从 tarantool 中选择有限数量的记录,就像 SQL 中的 SELECT LIMIT 一样?

    我想在 Tarantool 空间上执行选择 使用过滤和限制结果 就像我可以使用简单的 SQL 查询一样 SELECT FROM users WHERE age gt 33 LIMIT 1 我怎样才能做到这一点 可以使用 Lua 和 SQL
  • 排除任何字段中具有 NULL 值的行结果?

    我有一个像这样的简单选择 SELECT FROM table WHERE fk id 10020 它可以工作 但有一些字段为 NULL 没有模式所以做了 SELECT FROM table WHERE fk id 10020 AND NOT
  • PDO 和 Microsoft SQL:必须声明表变量“@P1”

    我正在尝试使用 PDO 中的绑定从 Microsoft SQL 数据库中选择一些条目 我正在使用的代码看起来与我在文档中找到的代码类似 但是 当我运行它时 我收到以下警告 警告 PDOStatement execute pdostateme
  • mysql变量赋值:如何强制赋值顺序?

    由于mysql是一种声明性语言 我找不到强制赋值变量顺序的方法 采取这个查询 SET v1 0 SET v2 0 SELECT v1 v2 FROM MyTable table WHERE v1 v2 is not null AND v2
  • 使用存储过程访问数据可以提供哪些安全优势?

    我看到一些指南建议您通过存储过程对所有数据访问进行分层来保护数据库 我知道对于 SQL Server 您可以保护表甚至列免受 CRUD 操作的影响 例如 Logged in as sa USE AdventureWorks GRANT SE
  • 将 SQL 中的数据存储在数组中

    我正在尝试将 sql 数据库中的数据存储到数组中 目前我有这个 query mysql query SELECT FROM InspEmail WHERE Company LIKE company while row mysql fetch
  • WHERE 子句或 ON 子句中的 INNER JOIN 条件?

    我今天输错了一个查询 但它仍然有效并给出了预期的结果 我的意思是运行这个查询 SELECT e id FROM employees e JOIN users u ON u email e email WHERE u id 139840 但我
  • 左连接,左表中没有重复行

    请看下面的查询 tbl 目录 Content Id Content Title Content Text 10002 New case Study New case Study 10003 New case Study New case S
  • 在带有循环引用的表中插入 SQL

    我有 2 张桌子 Empleados numEmpl nombre apellido sexo telefono salario numDept Departamentos numDept nombreDept numDirect 在部门中
  • 获取SQL中前2个特殊字符之间的字符

    我有数据在sql 只是要注意 SQL STudio is the IDE like data a 10 b c a 1 b c 我想获取前两个符号之间的数据 Output 10 1 这就是我的方法 SELECT CAST
  • 计算行数并仅获取表中的最后一行

    我有一张桌子叫employeexam其结构和数据是这样的 id course id employee id degree date 1 1 3 8 2013 01 14 2 2 4 15 2013 01 14 3 2 4 17 2013 0

随机推荐

  • Django 中不捕获可选 URL 元素

    我正在使用 Django 并且想要匹配 URLdomain com w and domain com words 我有一个以下形式的配置行 url r w ords app name views view words view words仅
  • Google Foobar power_hungry

    Locked 有对该问题内容的争议 help locked posts此时正在解决 目前不接受新的答案或互动 您好 我需要帮助解决我的 Google foobar 问题之一 这是我到目前为止所得到的 package com google c
  • 如何打开sqlite数据库并将其转换为pandas dataframe

    我已经下载了一些数据作为 sqlite 数据库 data db 我想在 python 中打开这个数据库 然后将其转换为 pandas 数据框 这是到目前为止我所做的 import sqlite3 import pandas dat sqli
  • 批处理:在带有管道的 for 循环中执行带引号的命令来查找

    您能否建议如何修复下面的命令 该命令会从 svn 中删除未版本控制的项目 rem echo off for f tokens 2 i in c Program Files TortoiseSVN bin svn exe status no
  • 如何使 WooCommerce 3.0 Single Image Gallery 像 2.x 版本一样?

    如果您更新到 WooCommerce 3 0 并且您的主题尚未更新 如何使 WooCommerce 3 0 单一产品图片库像以前的版本一样工作 对于不复制模板文件并使用条件 挂钩和过滤器进行修改以避免许多问题的主题来说 这是一个问题 要添加
  • Python Shapely 安装不起作用?

    有什么想法吗 我尝试卸载 Shapely 并使用 PIP 安装 我有 Anaconda 并安装了 Fiona 很好 Shapely 看起来也很好 简单代码 import fiona import shapely dirVar C Users
  • 使用引用的 ItemsSource 绑定到 SelectedItem

    Intro 我有一个不同的数据源池 我有口罩 面具有索引线 每个 Indexline 都有一个来自关联池的数据源 Classes public class DataSource public string Name get set publ
  • 是否可以执行扩展名为 file.php.jpg 的 PHP?

    网站合法文件image upload php用于上传文件89471928047 php jpg这是简单的文件上传表单 将 tmp 文件复制到同一图像文件夹 他们如何设法执行它并通过它上传其他文件 有人知道这怎么可能吗 PHP version
  • 如何在java中检查当前键盘语言

    java中有没有办法检查当前程序中的键盘语言是什么 例子 铬 英语 日食 英语 Skype 西班牙语 铬 英语 我可以通过 jna 外部库获取当前程序 非常感谢 尝试这个 import java awt im public class Te
  • 为什么list.parallelStream().forEach()没有处理Java中列表中的所有元素?

    以下代码并未在完成并行处理后将所有元素放入目标列表中 这有什么原因吗 public static void main String args List
  • 如何使提供程序假设_角色块有条件

    我有一个provider我想给的块assume role属性 但前提是它没有在我的本地计算机上运行 我定义了一个变量islocal在所有环境中 tfvars文件 只有本地文件具有该值true 这是provider block provide
  • SwiftUI - 显示符合协议和 ForEach 的元素的视图

    我想写一个 SwiftUI 视图我的结构列表对符合给定协议的元素数组进行操作我的协议 该示例有效 但当然我需要对数组的元素进行 ForEach 如注释行中所尝试的那样 使用 ForEach 我得到 协议类型 MyProtokoll 的值不能
  • 等待 AsyncMethod() 与等待等待 Task.Factory.StartNew(AsyncMethod)

    给出以下方法 public async Task
  • 如何使用可以是多种类型的变量?

    我经常使用以下方法将对象链接到其父对象 Video parent 有时我的对象可以是不同对象类型的子对象 我也是如此 int parentType Video parentVideo if parent VIDEO then this wi
  • 如何使用 Bootstrap 选项卡?

    我试图了解如何做到这一点 http getbootstrap com javascript tabs http getbootstrap com javascript tabs 我认为文档不够详细 因为我无法理解它是如何工作的 div cl
  • 准备要在 npm 上发布的 React 组件

    我有一个想要在 npm 中发布的组件 我只是通过从项目中的组件文件夹导入它来进行测试 我设法发布它 但现在我得到 node modules 中出现错误 index js 模块 解析失败 意外的标记 11 8 您可能需要一个适当的 加载器来处
  • 如何将数据标签放置在条形系列的底部

    我有一个 水平 条形图 我想在该系列条形图的底部 或最左侧 添加数据标签 与此类似 http flowingdata com 2009 05 22 poll results what data lated area are you most
  • Android - 如何创建可点击的列表视图?

    我想让列表视图中的所有列表项打开到一个新页面 因此每个列表视图项目都打开到一个我可以使用的新黑色页面 我根本不知道如何实现这个 我已经连续搜索了几个小时 但找不到解决方案的答案 如果有人能够展示和 或解释如何执行此操作而不是提供链接 我们将
  • 实施帐户链接 - 查询

    当我正在努力在我的 Google Actions 应用程序上实现帐户链接时 我向 Google 开发倡导者寻求帮助 他向我发送了一个我已经阅读过的文档文章的链接 并建议我也咨询 Stackoverflow 我也已经完成了第二个建议 并且努力
  • 如何将 Snowflake 中的数组与不同的值连接起来?

    我有一个 MERGE 场景ARRAY AGG 主脚本中的函数 一旦我有了匹配项 我想组合源表和目标表中的数组 但不想添加现有值 我看过使用ARRAY CAT 但它没有返回预期的输出 这是查询 SELECT ARRAY CAT ARRAY C