【问题标题】:OpenOfffice Base, inserting the results of a join into a tableOpenOffice Base,将连接的结果插入到表中
【发布时间】:2015-12-05 19:38:39
【问题描述】:

我对 OpenOffice Base 很陌生,但对 SQL 不是。

我想将连接的结果插入到表中。它适用于简单的情况:

insert into "tbl1" ("last_name", "first_name") 
select "last_name", "first_name" from "contacts" 

但不是

insert into "tbl1" ("last_name", "first_name") 
select "contacts.last_name", "contact2.first_name"
from "contacts" INNER JOIN "contact2" 
    on "contacts.last_name" = "contact2.last_name" 
    and "contacts.first_name" = "contact2.first_name"

我得到这个错误:

1:未找到列:语句中的contacts.last_name [插入“tbl1”(“last_name”,“first_name”)选择 来自“联系人”的“contacts.last_name”、“contact2.first_name” 在“contacts.last_name”=“contact2.last_name”上内部加入“contact2” 和 "contacts.first_name" = "contact2.first_name"]

contacts.last_name 存在并填充了数据。

我检查了文档但没有看到它,所以我希望有人提供应该是一个简单的答案。另外我想知道如何将结果(而不是插入)写入 csv 文件。我认为 INTO TEXT 子句反对连接。

谢谢。

【问题讨论】:

    标签: sql join insert openoffice-base


    【解决方案1】:

    您需要在每个由两部分组成的列引用上附加一组双引号 - 表名和列名单独引用"contacts"."last_name"

    编辑:我知道获取查询的 CSV 文件的方法是将查询结果导入 Calc,然后将 Calc 文件另存为 CSV。请参阅本指南将基本查询(或表)导入 Calc:[Tutorial] Using registered datasources in Calc

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-04-29
      • 2023-03-16
      • 1970-01-01
      • 1970-01-01
      • 2019-07-28
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多