2

Hallo親愛なるStackoverflowユーザー。

SQLサーバーでSQLを操作する

フォーラムとインターネットを検索しましたが、達成したいことに関する情報が見つかりませんでした。主な理由は、正しい用語がわからないためです。

新しいビューを作成しました。列(ver_klass)から新しく作成された列にさまざまなデータをフィルターで除外したいと思います。

下の写真は、現時点での私の見解です。

ここに画像の説明を入力してください

これが私がビューを表現したい方法です:

ver_rayon  |ver_metier |ver_secteur
96         |           |
96         |           |
           | M10       |
           | M11       |
           |           |S1
12         |           |

それが可能かどうか、そしてどのようにできるのか知りたいです。どうもありがとう

4

1 に答える 1

4

CASEこれは、いくつかのステートメントで管理できます。アイデアは、の最初の文字がまたはでver_klassあるMかどうかを確認Sし、それぞれに対して異なるアクションを実行することです。したがって、最初のケースでは、どちらもM、Sでない場合、値はになりver_rayonます。2番目と3番目のケースはMSそれぞれとを検索し、それらの列に格納します。行は3つのケースのうちの1つにのみ一致するため、他の2つはNULLになります。

SELECT
 ...
 ...
 CASE WHEN LEFT(ver_klass, 1) <> 'S' AND LEFT(ver_klass, 1) <> 'M' THEN ver_klass ELSE NULL END AS ver_rayon,
 CASE WHEN LEFT(ver_klass, 1) = 'M' THEN ver_klass ELSE NULL END AS ver_metier,
 CASE WHEN LEFT(ver_klass, 1) = 'S' THEN ver_klass ELSE NULL END AS ver_secteur,
于 2012-04-19T14:07:50.513 に答える