2017-11-15 8 views
0

SQLクエリについて質問があります。同じクエリ内で行を他の行と比較する

enter image description here

基本的に、私はtestCategory = compareTestCatとテスト・タイプ= compTestTypeからのサンプル値を取得したいと思います。

最初の行と同じクエリ内の4番目の行を比較できるかどうかはわかりません。 これを行う方法はありますか?

+0

自己参照をルックアップします(詳細はわからないクエリの残りの部分によって異なります)。 – Richard

答えて

2

同じテーブル内の値を比較するには、SELF JOINを試してください。

次の操作を試してください。

SELECT A.* 
FROM YourTable A 
JOIN YourTable B ON A.testCategory = B.compareTestCat and A.testType = B.compTestType 

は、AとBは同じテーブルの異なる別名です。あなたが提供する非常にまばらな情報に基づいて

1

が、これはあなたが必要なもののようになります。

SELECT * 
    FROM 
     TestTable 
    WHERE 
      testCategory = compareTestCat 
     AND testType = compTestType; 

UPDATE

あなたがお互いに同じテーブル内の別の行を比較することに興味があるなら、テーブルのself joinに行く必要があります。これに対する解決策の例は既に他の人によって提供されている。

+0

あなたのクエリにいくつかのSQLフィーリングの例を挙げられますか? nullを返します。彼は第1行と第4行を比較したいからです。同じ行ではありません。 – DineshDB

+0

@DineshDB私はこれが、質問の解釈がそれに答える私たちのものに任せられたときに起こると思います。 –

関連する問題