SQLServerのビューで複数のフィールドから特定文字が入っているワードを表示させたい
お世話になります。
フィールドA に "8/3 ○○様 名刺が必要" フィールドBに "△△様 初見" フィールドCに "休み" フィールドDに "□□殿 お酒NG"
上記のようにフィールドにランダムな備考が入っているようなデータに対して条件に合致したもの、また複数合致した場合は優先度をつけたフィールドのワードの一部をビューの1フィールドとして取得することは可能でしょうか?
条件
- "様"を含む連続したワード(全角と半角空白が間に入るまで)を取得したい
- "様"が複数あった場合はフィールドA,B,C,Dの優先度で取得したい
- "様"がなければ"殿"を含む連続したワードを取得したい
- "殿"が複数あった場合はフィールドA,B,C,Dの優先度で取得したい
- "様"も"殿"もなければ空文字''を取得したい
具体例
フィールドA に "8/3 ○○様 名刺が必要" フィールドBに "△△様 初見" フィールドCに "休み" フィールドDに "□□殿 お酒NG"
⇒ "○○様"を取得
フィールドA に "8/3 ○○殿 名刺が必要" フィールドBに "△△様 初見" フィールドCに "休み" フィールドDに "□□殿 お酒NG"
⇒ "△△様"を取得
フィールドA に "名刺が必要" フィールドBに "来週対応" フィールドCに "休み" フィールドDに "□□殿 お酒NG"
⇒ "□□殿"を取得
フィールドA に "○○殿 名刺が必要" フィールドBに "来週対応" フィールドCに "休み" フィールドDに "□□殿 お酒NG"
⇒ "○○殿"を取得
フィールドA に "名刺が必要" フィールドBに "来週対応" フィールドCに "休み" フィールドDに "お酒NG"
⇒ ""(空文字)を取得
補足
SQLのビューで実現できるなら一番ですが、無理でしたらストアドで実現可能か教えていただけると幸いです。
プログラム版は既にあるのですが、できるだけ仕様をシンプルにしたいのでSQLスクリプトだけ実装できるよう改修したいと思っております
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/09/05 08:07
2017/09/05 09:52
2017/09/05 12:17