2016-09-02 14 views
0

私はMS Access 2010を使用しています。インナーは2つのテーブルを結合しています(テーブルから2カラム、すべての列を選択したテーブルの列の1つでエイリアスを使用します。ここで今、私はこれを実行すると、現在のSQL他のテーブルと結合したテーブルのインナーから*を選択するときのカラムエイリアスの使い方

SELECT 
    Cars.brand, Cars.owner, * 
FROM 
    Cars INNER JOIN Inspections ON Cars.vin = Inspections.vin 

の一例として、VINの欄には、「Inspections.vin」として返されます。私はちょうどそれを読んでほしいです。これは可能ですか?

+0

'*'の列にエイリアスを指定することはできません。ケーキを食べて食べることはできません。 – Andomar

+0

2番目のテーブルから必要なすべてのカラムを選択する必要があります。また、それらのエイリアスだけを定義することもできます。 – Susang

答えて

1

ただ、現在、あなたは、両方のテーブルからすべての列を選択し、テーブル名を追加します。

SELECT 
    Cars.brand, Cars.owner, Inspections.* 
FROM 
    Cars INNER JOIN Inspections ON Cars.vin = Inspections.vin 
+0

答えを編集しました。正しく前に質問をキャッチしませんでした –

+0

ああ!私は両方のテーブルからすべての列を引っ張っていたことに気づいていませんでした。この回答はチケットだった、ありがとう! – Jason

0

あなたが唯一の明示的select声明に含まれている列に別名を割り当てることができます。それ以外の場合は、クエリのall一部内のすべてのものは

SELECT 
    Cars.brand, Cars.owner, [vin] = Cars.vin, * 
FROM 
    Cars INNER JOIN Inspections ON Cars.vin = Inspections.vin 
0

元のカラム名を返します。私は、これはあなたが点検からすべての列をしたいので、探しているものだと思います。エイリアスが必要な場合は*を使用できません。代わりに、検査から必要なすべての列を指定する必要があります。私の例では、Inspectionsに2つの変数しかないかのようです。すべての列があるまで、Inpections.whateverを追加してください。

SELECT Car.brand, Cars.owner, Inspections.vin as vin, Inspections.othervar 
    FROM Cars 
INNER JOIN Inspections 
    ON Cars.vin = Inspections.vin 
関連する問題