2017-01-06 6 views
-5

私のインタビューの1つで私に尋ねられました。テーブル 'M'と 'F'(Oracle DB)を持つテーブルから別の値を表示する方法

私はMとFとして列の値を持つテーブルを持っていますが、私はSQLクエリを使用して以下の出力を表示したいと思います。

Row 1 'M' 
Row 2 'F' 
Row 3 'M' 
Row 4 'F' 
Row 5 'M' 
Row 6 'F' 
. 
. 
. 
etc.. 

おかげで、

+0

である必要があり、文字列の連結のために使用されている。しかし、あなたは男性と女性のレコードの同じ番号を持っていますか?これが事実でない場合はどうなりますか? –

+0

私たちにあなたの仕事を依頼するのではなく、あなたの質問を見せて、あなたが論理的な問題を抱えているのか疑問を呈してください。 –

+0

@ Tim: - はい、MとFの数は同じです。 – user3828680

答えて

0

は、このクエリを試して、それは、交互の行

SELECT所有者基づいMまたはFを返す(TO_CHAR(MOD(ROWNUM、2))をデコードする '0'、 'M'、 '1'、 'F')FROM all_objects WHERE ROWNUM < 100;

+0

ありがとう、これは理にかなっています。 – user3828680

0

テーブル構造を想定あなたのクエリが

select 'Row '||rownum||' '||chr(39)||gender||chr(39) result_data from test; 
  • rownumのようになります

    create table test(
        gender char(1), 
        name varchar(50) 
    ); 
    

    を下回っていること

  • chr(39)は、単一引用符文字'
  • ある番号1,2,3になどを提供します
  • ||

結果が

Row 1 'M' 
Row 2 'F' 
Row 3 'M' 
Row 4 'F' 
Row 5 'M' 
Row 6 'F' 
関連する問題