questdb - 使用 Postgres 将数据批量插入 QuestDB
问题描述
如何使用 Postgres 将数据批量插入 QuestDB?以下不起作用
CREATE TABLE IF NOT EXISTS employees (employee_id INT, last_name STRING,first_name STRING);
INSERT INTO employees
(employee_id, last_name, first_name)
VALUES
(10, 'Anderson', 'Sarah'),(11, 'Johnson', 'Dale');
解决方案
对于批量插入数据,有几个选项。您可以使用从最接近您的示例的现有表中批量插入CREATE AS SELECT
:
CREATE TABLE employees
AS (SELECT employee_id, last_name, first_name FROM existing_table)
或者您可以使用准备好的语句, QuestDB Postgres 文档中有几种语言的完整工作示例,这是 Python 示例的片段:
# insert 10 records
for x in range(10):
cursor.execute("""
INSERT INTO example_table
VALUES (%s, %s, %s);
""", (dt.datetime.utcnow(), "python example", x))
# commit records
connection.commit()
或者您可以从 CSV 批量导入,即:
curl -F data=@data.csv http://localhost:9000/imp
推荐阅读
- html - 是否有一个网格系统对列使用基于百分比的宽度,对排水沟使用 px 值?
- python - 如何在 Python 中限制或限制数组的长度?
- c# - C# SqlKata 引擎更新查询似乎没有执行
- c++ - 循环遍历相同数据的优雅替代方案?
- java - 缓存由 Code 或其他节点创建后是否重新配置?
- java - 如何确保此 recylerview 仅在必要时进行调整?
- python - 如何通过输入定义函数中的变量?
- abap - SAP Tree GetAbapImage 为不同的图标返回相同的值,如何解决?
- python - 使用 peewee 构建 FIQL 查询
- javascript - 简单 AJAX 调用上未捕获的 TypeError