1

私は 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」から「contacts.last_name」、「contact2.first_name」
内部結合 "contact2" on "contacts.last_name" = "contact2.last_name"
and "contacts.first_name" = "contact2.first_name"]

しかし、contacts.last_name存在し、データが取り込まれています。

ドキュメントを確認しましたが、表示されないので、誰かが簡単な答えを提供してくれることを願っています。また、(挿入の代わりに) 結果を csv ファイルに書き込む方法を知りたいです。INTO TEXT 句は結合に反対していると思います。

ありがとう。

4

1 に答える 1

1

2 部構成の列参照ごとに追加の二重引用符のセットが必要です。テーブル名と列名は個別に引用されます。"contacts"."last_name"

編集:クエリのCSVファイルを取得する方法は、クエリ結果をCalcにインポートしてから、CalcファイルをCSVとして保存することです。Calc へのベース クエリ (またはテーブル) のインポートに関するこのガイドを参照してください: [チュートリアル] Calc で登録済みデータソースを使用する

于 2015-09-18T18:00:52.063 に答える