現在、ビューを変更する必要があります。ビューコードの大部分は次のようになります。
CAST('My_Tag_' + CASE
WHEN FieldX isnull
THEN ''
WHEN FieldX = '123'
THEN 'some_number'
WHEN FieldX = 'abc'
THEN 'some_text'
ELSE 'strange' ) AS VARCHAR(128) AS myField
)
文字列をまとめたコードのチャンクです(コード自体は今のところ重要ではありません。他に50の例があり、コードの複製がたくさんあります)。これで、ビュー内のさらに30個のフィールドに対してまったく同じコードがあり、「My_Tag_」とFieldXだけが変更されています。これがC#の場合は、ヘルパー関数を少し作成します。もちろん、ここで関数を書くこともできます。しかし、これは多くのテーブルやビューなどを備えたより大きなプロジェクトであるため、すぐに数百の関数を使用できるようになります。
今、私はSQLにかなり慣れていません。通常、私の家はOOPの世界です。しかし、コードの複製を回避し、データベースに何百ものヘルパー関数が存在しないようにするためのソリューションが必要ですか?
この場合のベストプラクティスは何ですか?