问题标签 [vsql]

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.

0 投票
1 回答
7526 浏览

database - 如何在vertica(vsql)中转义字符串中的引号?

所以我需要将一些值插入到 vertica 数据库中(通过 vsql),其中可能包含引号和各种特殊字符。但是vertica似乎不理解字符转义。例如:

这不是插入语句,但您应该明白。

0 投票
3 回答
9137 浏览

sql - 如何在 Vertica 中完成查询时显示查询时间?

使用 vsql 时,我想看看查询完成后运行多长时间。例如,当我运行时:

我想看到这样的输出:

如果这是不可能的,是否有另一种方法来衡量查询时间?

0 投票
2 回答
554 浏览

vertica - vsql 比 Squirrel SQL 慢

我在一个大约有 2.58 亿行的表上的 Vertica 数据库(在单个节点上运行)中执行如下 SQL。

在 SQuirrel SQL 中,我在大约 17 秒内获得了输出,但在命令行模式下,在 vsql 中获得相同查询的输出需要几分钟。

任何想法,这种缓慢的原因可能是什么vsql

0 投票
4 回答
2884 浏览

bash - vsql 错误处理(没有这样的文件或目录)

我正在使用 shell 脚本将查询结果上传到我的数据库。在脚本中,首先我将查询结果保存到 csv 文件中,然后将文件上传到另一个数据库。在每一步之后,我都会向用户发送一封通知电子邮件。我面临的问题是我无法进行正确的错误处理。例如,我使用类似下面的命令来生成 csv 文件:

如果目录“data”不存在,在 Unix 中的退出状态仍然返回 0(即使发生错误也操作成功),因为屏幕上显示了查询结果。我该如何处理这样的错误?我应该在脚本中使用哪种 IF 语句来捕获它?

非常感谢!

0 投票
2 回答
1368 浏览

sql - 如何在另一个表中加入最近日期的记录?

我想制作一份销售报告,显示每种产品在销售时的价格。定价存储在单独的价格历史表中,因此我想加入销售日期之前的最新价格。

我知道如何实现查询,但我正在使用的数据库(Vertica)似乎不支持我想要做的事情。

这是表结构的简化版本:

这是我想从上述数据生成的报告示例:

这是我到目前为止编写的 SQL:

这可能适用于另一个数据库平台,但 Vertica 给了我这个错误:“不支持非等式相关子查询表达式”。它不喜欢date < s.date我的子查询的组件。

还有另一种方法可以做到这一点吗?

后来,我发现了一个在 Vertica 上有效的解决方法,在查询中使用了对 PriceHistory 表的两个不同引用:

可能有更好的方法来做到这一点,如果是这样,我很想听听。

0 投票
2 回答
89 浏览

sql - 按列聚合有效地分组

返回收入>1000 的行。

根据需要返回该日期期间总收入大于 1000 的 id 的行。但是这个查询要慢得多。有更快的方法吗?

0 投票
2 回答
12614 浏览

sql - 返回每个组的前 N ​​行 (Vertica/vsql)

熟悉的问题,但与 Vertica。我想根据每个 tag_id 的 sum(imps) 返回前 5 个 geo_country 行。这是我开始的查询:

这实际上只返回 WHERE 子句 (2013150) 中第一个标记中的行。我知道另一个标签的 sum(imps) 值足够高,应该将其包含在结果中。

另外,如何实现 Top N 部分?我尝试在 OVER 函数中添加一个 LIMIT 子句,但它看起来不像是一个可接受的参数。

0 投票
4 回答
7390 浏览

sql - 处理 CASE 语句中的重叠条件

结果实际上似乎给了我第 1-3 天、第 4-10 天和第 11-30 天的时段。我相信这是因为有重叠的条件,一旦满足第一个条件,SQL 就会停止处理 CASE 语句。

我想要的是每个桶的总数(即 3 天总和、10 天总和和 30 天总和)。

有没有办法在不添加额外字段的情况下做到这一点?

PS - 语法与传统 sql 有点不同,因为它是 vsql (vertica)。

0 投票
2 回答
2579 浏览

vertica - vsql/vertica,如何将文本输入文件的名称复制到目标表中

我必须将输入文本文件 (text_file.txt) 复制到表 (table_a)。我还需要将输入文件的名称包含在表中。

我的代码是:

最后一行不复制表中的输入文本文件名。如何将输入文本文件的名称复制到表中?(无需手动输入文件名)

0 投票
2 回答
1458 浏览

sql - 如何从时间戳中删除时间分量?

例如,如何从时间戳中删除时间组件:

成为