问题标签 [string-agg]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
sql-server - 从案例查询中消除空结果 - 源中没有空值
我正在尝试执行复杂的聚合和连接查询来准备数据以导入网站,将多个结果行和列聚合到每个 ID 的一行中。
我快到了,除了我得到很多 NULL 结果,尽管源数据中没有 NULL 值。
源数据:
ID | 值_1 | 价值_2 | 值_3 | 类型 |
---|---|---|---|---|
x1 | 一些文本 | 其他文本 | 更多文字 | A2 |
x1 | 一些文本 | 其他文本 | 更多文字 | B1 |
x1 | 一些文本 | 其他文本 | 更多文字 | B2 |
x2 | 一些文本 | 其他文本 | 更多文字 | B1 |
x2 | 一些文本 | 其他文本 | 更多文字 | A2 |
x2 | 一些文本 | 其他文本 | 更多文字 | B1 |
以下:
产生:
ID | type_a2 | 类型_B1 |
---|---|---|
x1 | 一些文本其他文本更多文本 | 空值 |
x1 | 空值 | 一些文本其他文本更多文本 |
x2 | 一些文本其他文本更多文本 | 空值 |
x2 | 空值 | 一些文本其他文本更多文本 |
当我尝试一次只运行一列时,我仍然得到一些 NULL 结果。
如何将这些结果放在每个唯一 ID 的一行中?
IE...
ID | type_a2 | 类型_B1 |
---|---|---|
x1 | 一些文本其他文本更多文本 | 一些文本其他文本更多文本 |
x2 | 一些文本其他文本更多文本 | 一些文本其他文本更多文本 |
x3 | ETC | ETC |
sql - string_agg 行为不正确
我有这样的表:
我想得到这样的东西:
所以我在查询中添加了 string_agg 函数,但是字段 ALLSTATES 返回的结果如下:
这是我的查询:
知道如何纠正这个吗?
sql - 查找最流行的 SQL 组合
我有 2 个表我想加入以探索最受欢迎的位置组合,按不同的 ID,按计数排序。我从 l 获得位置,从 d 获得日期。此连接的结果将是:
如果可能,我想使用 STRING_AGG,但 WITHIN 语句出错 -
'期待')'但在里面
..(我为此使用 BigQuery)。这是我到目前为止所尝试的。
我想最终得到类似的东西:
如果有另一种方法,我很乐意从 string_agg 更改。
sql - PostgreSQL:让 STRING_AGG 尊重 CTE 的排序
我正在创建一个报告,显示员工的前团队以及他们离开的日期,并汇总到报告中的单个字段中。这在一定程度上有效:
https://www.db-fiddle.com/f/jZCcKRWNV8vLJUFsa6kq7/2
但是STRING_AGG
按字母顺序对术语进行排序。我希望它们按most_recent_date_left
. 我怎样才能做到这一点?
该文档指出:
或者,从排序的子查询中提供输入值通常会起作用。
我是否必须将 CTE 重写为子查询……?
c++ - 删除 char 数组中的字符
我必须将 for 放在调用值 B 的“删除”函数中并在 main 中打印,你知道怎么做吗?
给定从键盘读取的字符串 A,用 C++ 语言创建一个函数,该函数通过删除所有出现多次的字符来计算从第一个字符串 B 获得的第二个字符串 B。因此,生成的字符串必须以相同的顺序包含第一个字符串的字符,但不能重复。
sql - 查询返回 N 个随机连接的记录
我接到了一项任务,我需要从一个表中返回所有公司的列表,并使用 Microsoft SQL Server 从另一个表中返回与该公司关联的 3 个随机电子邮件地址的逗号分隔列。到目前为止,我已经能够以随机顺序获取公司和所有关联的电子邮件地址,但我现在需要将此列表限制为 3 个。每个公司至少有 4 个关联的电子邮件地址,但可以想象有数百个。这是我的SQL。
我很感激对此的任何想法。
sql - 如何使用 STRING_AGG() 以升序分隔字符串逗号
我的桌子看起来像这样
我的查询是
当我按颜色分组并聚合时,我得到未排序的订单
像这样的东西
问题:AggOrder 是无序的 49,20,59,42,81
我想订购
所以最终结果是
我试过这个查询
但这给出了一个错误。
知道如何解决吗?
sql - SQL BQ 返回用户评价最好和最差的电影
我有以下格式的数据:
用户身份 | 用户名 | 电影评分 | 电影名 |
---|---|---|---|
1 | X | 1 | asd1 |
1 | X | 3 | asd2 |
1 | X | 5 | asd3 |
1 | X | 5 | asd4 |
2 | 是的 | 2 | asd4 |
2 | 是的 | 3 | asd5 |
2 | 是的 | 4 | asd6 |
我想以 best_rated_movie 和 best_rated_movie 为数组的格式提取每个用户的最佳和最差评分电影(因为用户可以拥有多个最差电影等):
用户身份 | 用户名 | best_rated_movie | 最差的电影 |
---|---|---|---|
1 | X | (asd3,asd4) | asd1 |
2 | 是的 | asd6 | asd4 |
我设法提取表以输出我只有最好和最差评分的电影:
用户 | 用户名 | 电影评分 | 电影名 |
---|---|---|---|
1 | X | 1 | asd1 |
1 | X | 5 | asd3 |
1 | X | 5 | asd5 |
2 | 是的 | 2 | asd4 |
2 | 是的 | 4 | asd6 |
这是我用于此的代码:
不幸的是,我不知道如何前进,我尝试过聚合但没有成功(尤其是在使用数组的情况下)。我至少会很感激如何处理这个问题的建议。
split - 是否可以在使用 SPLIT() IN BigQuery 创建的数组上使用 STRING_AGG 进行连接
我正在尝试使用 string_agg 连接使用 SPLIT() 创建的数组。
我试图连接的数组的代码如下所示:
我在我的连接中使用了未嵌套的 SupcomponentsLEFT JOIN UNNEST (Subcomponents) AS Subcomponents
但是,我收到以下错误:
No matching signature for aggregate function STRING_AGG for argument types: ARRAY <STRING>