2016-11-14 2 views
1

この質問に対して、割り当てについて質問されました。SQLクエリー結果のカラムの名前を指定するときに問題が発生する

同じスピードとRAMの両方を持つPCモデルのペアを検索します。ペアは に1回だけリストされます。 (I,j)がリストされている場合、(j,i). の検索結果を表示しません:

PC1.model PC2.model 

1004  1012 

私が書いた次のコード:私の2つの列が

MODEL MODEL 

1004 1012 

SELECT distinct PC1.model, PC2.model 
FROM PC PC1,PC PC2 
WHERE PC1.model < PC2.model and PC1.speed = PC2.speed and PC1.ram = PC2.ram; 

は私に答えを与えます名前はPC1.model and PC2.modelとなっていました。

私は

SELECT distinct PC1.model as 'PC1.model', PC2.model as 'PC2.model' 
FROM PC PC1,PC PC2 
WHERE PC1.model < PC2.model and PC1.speed = PC2.speed and PC1.ram = PC2.ram; 

以下のコードに私のコードを変更しようとしたが、私はエラーを取得しておいてください。

Error at Command Line : 1 Column : 30
Error report -
SQL Error: ORA-00923: FROM keyword not found where expected 00923. 00000 - "FROM keyword not found where expected"
*Cause:
*Action:

私は私ができることはすべて試した、私はちょうど私の列の名前を変更したいですしかし私は方法を見つけるように見えることはできません。どんな助けもありがとう。

+0

どのようにあなたが共有しているクエリであなたの列の名前を変更しています。あなたがしているのは 'セレクション(seleection) 'です。テーブルの更新は、 'alter'キーワード – mrid

+0

が必要な非常に異なるものです。私は、結果の列名がテーブル内のものと異なるようにしたいと言っていました。私の前のコードでは、両方の列名が "MODEL"として出力されますが、最初の列にはPC1.model、2番目にはPC2.modelとします。私はこれを次のように変更しようとしました:SELECT PC1.modelを 'PC1.model'、PC2.modelを 'PC2.model'として選択してください。 – CSgirl

答えて

0

は次のように試してみてください:

SELECT distinct PC1.model as "PC1.model", PC2.model as "PC2.model" 
    FROM PC PC1,PC PC2 
    WHERE PC1.model < PC2.model and PC1.speed = PC2.speed and PC1.ram = PC2.ram; 
+0

#CSgirlは一重引用符を使用しています。ここでは、「PC1.model」と「PC2.model」には二重引用符を使用していますが、#NineBerryはすでに同じ – James

関連する問題