1

データベースに 2 つ以上のテーブルがあり、それらすべてに次のような同じフィールド名が含まれています

table A           table B       table C
field1            field1        field1
field2            field2        field2
field3            field3        field3
.                 .             .
.                 .             .
.                 .             .
.                 .             .

SELECTこれら 3 つのテーブルからほぼすべて同じフィールドを取得するクエリを作成する必要があります。私はこのようなものを使用しています:

select a.field1,a.field2,a.field3,b.field1,b.field2,b.field3,c.field1,c.field2,c.field3 from table A as a, table B as b,table C as c where so and so.

しかし、field1の値を出力すると、最後のテーブル値が得られます。

同じフィールド名を持つ 3 つのテーブルのすべての値を取得するにはどうすればよいですか? すべてのテーブルに対して個別のクエリを作成する必要がありますか、または単一のクエリですべてを取得する方法はありますか?

4

3 に答える 3

1

このように書くだけで、

select a.field1 as af1,a.field2 as af2,a.field3 as af3,b.field1 as bf1,b.field2 as bf2,b.field3 as bf3,c.field1 as cf1,c.field2 as cf2,c.field3 as cf3 from table A as a, table B as b,table C as c where so and so.
于 2010-05-10T07:11:19.043 に答える
0

これは、プログラミング ツールが重複したフィールド名を処理する方法のアーティファクトです。AS必要に応じて、フィールド名にエイリアスを使用できます。

SELECT a.field1 AS a_field1, ...

としてアクセスできるはずa_field1です。

于 2010-05-10T07:04:01.877 に答える
0

列に別名を付けることができます。例 注: 構文は、DB によって異なる場合があります。

SELECT
    a.field1 `A_Field1`,
    b.field1 `B_Field1`

SELECT
    a.field1 [A_Field1],
    b.field1 [B_Field1]

SELECT
    a.field1 AS A_Field1,
    b.field1 AS B_Field1
于 2010-05-10T07:05:46.773 に答える