SQLクエリについて質問があります。同じクエリ内で行を他の行と比較する
基本的に、私はtestCategory = compareTestCatとテスト・タイプ= compTestTypeからのサンプル値を取得したいと思います。
最初の行と同じクエリ内の4番目の行を比較できるかどうかはわかりません。 これを行う方法はありますか?
SQLクエリについて質問があります。同じクエリ内で行を他の行と比較する
基本的に、私はtestCategory = compareTestCatとテスト・タイプ= compTestTypeからのサンプル値を取得したいと思います。
最初の行と同じクエリ内の4番目の行を比較できるかどうかはわかりません。 これを行う方法はありますか?
同じテーブル内の値を比較するには、SELF JOIN
を試してください。
次の操作を試してください。
SELECT A.*
FROM YourTable A
JOIN YourTable B ON A.testCategory = B.compareTestCat and A.testType = B.compTestType
は、AとBは同じテーブルの異なる別名です。あなたが提供する非常にまばらな情報に基づいて
が、これはあなたが必要なもののようになります。
SELECT *
FROM
TestTable
WHERE
testCategory = compareTestCat
AND testType = compTestType;
UPDATE
あなたがお互いに同じテーブル内の別の行を比較することに興味があるなら、テーブルのself join
に行く必要があります。これに対する解決策の例は既に他の人によって提供されている。
あなたのクエリにいくつかのSQLフィーリングの例を挙げられますか? nullを返します。彼は第1行と第4行を比較したいからです。同じ行ではありません。 – DineshDB
@DineshDB私はこれが、質問の解釈がそれに答える私たちのものに任せられたときに起こると思います。 –
自己参照をルックアップします(詳細はわからないクエリの残りの部分によって異なります)。 – Richard