问题标签 [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.
database - 如何在vertica(vsql)中转义字符串中的引号?
所以我需要将一些值插入到 vertica 数据库中(通过 vsql),其中可能包含引号和各种特殊字符。但是vertica似乎不理解字符转义。例如:
这不是插入语句,但您应该明白。
sql - 如何在 Vertica 中完成查询时显示查询时间?
使用 vsql 时,我想看看查询完成后运行多长时间。例如,当我运行时:
我想看到这样的输出:
如果这是不可能的,是否有另一种方法来衡量查询时间?
vertica - vsql 比 Squirrel SQL 慢
我在一个大约有 2.58 亿行的表上的 Vertica 数据库(在单个节点上运行)中执行如下 SQL。
在 SQuirrel SQL 中,我在大约 17 秒内获得了输出,但在命令行模式下,在 vsql 中获得相同查询的输出需要几分钟。
任何想法,这种缓慢的原因可能是什么vsql
?
bash - vsql 错误处理(没有这样的文件或目录)
我正在使用 shell 脚本将查询结果上传到我的数据库。在脚本中,首先我将查询结果保存到 csv 文件中,然后将文件上传到另一个数据库。在每一步之后,我都会向用户发送一封通知电子邮件。我面临的问题是我无法进行正确的错误处理。例如,我使用类似下面的命令来生成 csv 文件:
如果目录“data”不存在,在 Unix 中的退出状态仍然返回 0(即使发生错误也操作成功),因为屏幕上显示了查询结果。我该如何处理这样的错误?我应该在脚本中使用哪种 IF 语句来捕获它?
非常感谢!
sql - 如何在另一个表中加入最近日期的记录?
我想制作一份销售报告,显示每种产品在销售时的价格。定价存储在单独的价格历史表中,因此我想加入销售日期之前的最新价格。
我知道如何实现查询,但我正在使用的数据库(Vertica)似乎不支持我想要做的事情。
这是表结构的简化版本:
这是我想从上述数据生成的报告示例:
这是我到目前为止编写的 SQL:
这可能适用于另一个数据库平台,但 Vertica 给了我这个错误:“不支持非等式相关子查询表达式”。它不喜欢date < s.date
我的子查询的组件。
还有另一种方法可以做到这一点吗?
后来,我发现了一个在 Vertica 上有效的解决方法,在查询中使用了对 PriceHistory 表的两个不同引用:
可能有更好的方法来做到这一点,如果是这样,我很想听听。
sql - 按列聚合有效地分组
返回收入>1000 的行。
根据需要返回该日期期间总收入大于 1000 的 id 的行。但是这个查询要慢得多。有更快的方法吗?
sql - 返回每个组的前 N 行 (Vertica/vsql)
熟悉的问题,但与 Vertica。我想根据每个 tag_id 的 sum(imps) 返回前 5 个 geo_country 行。这是我开始的查询:
这实际上只返回 WHERE 子句 (2013150) 中第一个标记中的行。我知道另一个标签的 sum(imps) 值足够高,应该将其包含在结果中。
另外,如何实现 Top N 部分?我尝试在 OVER 函数中添加一个 LIMIT 子句,但它看起来不像是一个可接受的参数。
sql - 处理 CASE 语句中的重叠条件
结果实际上似乎给了我第 1-3 天、第 4-10 天和第 11-30 天的时段。我相信这是因为有重叠的条件,一旦满足第一个条件,SQL 就会停止处理 CASE 语句。
我想要的是每个桶的总数(即 3 天总和、10 天总和和 30 天总和)。
有没有办法在不添加额外字段的情况下做到这一点?
PS - 语法与传统 sql 有点不同,因为它是 vsql (vertica)。
vertica - vsql/vertica,如何将文本输入文件的名称复制到目标表中
我必须将输入文本文件 (text_file.txt) 复制到表 (table_a)。我还需要将输入文件的名称包含在表中。
我的代码是:
最后一行不复制表中的输入文本文件名。如何将输入文本文件的名称复制到表中?(无需手动输入文件名)
sql - 如何从时间戳中删除时间分量?
例如,如何从时间戳中删除时间组件:
成为