2017-04-07 6 views
0

誰もが8行を含む次の表から4行を引き出すSQLを知っていますか? 任意の人物ごとに1つの行が必要です。 実際のデータは何千ものレコードになりますので、一般的で、名前ではなくIDだけを使用する必要があります。ユニークなレコードを取得するOracle SQL

table

+0

は、まず問題のテキストとしてではなく、画像へのリンクとしてあなたのテーブルを含めるあなたの質問の質を向上させるために。これにより、すべての情報を1か所に保存することで、情報をすばやく確認することができます。画像へのリンクは、ダイアグラムやグラフィック出力など、質問で容易に再現できない情報を表示する必要がある場合に適しています。次に、「それぞれの恣意的な人物」の意味を広げてください。第3に、希望の出力を示す表を使用して、サンプル・データの表を補完します。 – toonice

+0

ありがとう、任意の意味結果セットの1番目または2番目に現れるのは私には関係ありません。私はテキストを投稿しようとしましたが、それは非常に判読不能な方法でレンダリングされたので、私はそれを削除し、画像を投稿しました。私はこのシステムに慣れて、次回に再試行しなければならないでしょう。私は、サンプルテーブルの作成スクリプトとサンプル行の挿入を簡単にするために投稿する可能性が最も高いでしょう。 – claghorn

答えて

1

あなたは、対称な関係を持っているようです。だから、あなたが行うことができます:

select t.* 
from t 
where t.id < t.pid; 
+0

私はこの方法を使いました。どうもありがとう。 – claghorn

0
select 
    ID, 
    FName, 
    LName 
    from your_table 
union 
select 
    PID, 
    PFName, 
    PLName 
    from your_table 
order by 3, 2, 1 
関連する問題