2017-03-18 15 views
0

http://www.sql-ex.ru/learn_exercises.php#answer_refからEXERCISE 74の回答に助けが必要です。SQLでは、特定の条件に基づいてどのテーブルを選択するのですか?

使用するデータベーステーブルは次のとおりです。

  • クラス(クラス、タイプ、国、numGuns、ボア、変位)

質問です:

  • は、すべての船のクラスを取得します。ロシアのデータベースにロシアの船級がない場合は、DBにあるすべての国のクラスを表示します。 結果セット:国、クラス。
  • 私はロシアのすべての船級を取得する方法を知っています。
  • ロシアを除くすべての船級クラスを取得する方法を知っています。

私はそれを解決するために考えることができる方法は、ロシア語のクラスを取得するために(テーブルA)select文を持っているだろうし、(テーブルB)は、非ロシア語のクラスを取得し、から選択してください...

しかし、私はそれが次のようにするための文法を知らない: ロシアが(クラス)に存在する場合、(テーブルA)から選択し、そうでなければ、 )。

ご協力いただきまして誠にありがとうございます。

+0

互換性のないデータベースタグを削除しました。実際に使用しているデータベースを決定し、適切にタグを付ける必要があります。 –

+0

@GordonLinoff大丈夫です。 –

答えて

1

私はそれを理解し終え、よりきれいな回答を見ることができました。次のように私が見つけた最もクリーンな答えは次のとおりです。

  • SELECT国、クラスWHERE国= 'ロシア
  • UNION
  • SELECT国からクラス、クラス「ロシアの
  • からクラス

"ロシアの国ではない(選択国からFROMクラス)"は私が探していたものです。

関連する問題