2011-12-23 13 views
0

私は次の列のテーブルを持っています:カンマ区切りの文字列テーブルエントリをEntity Frameworkでフィルタリングするクエリ?

equipment_id | equipment_name | DEPARTMENT_ID

DEPARTMENT_IDは、IDのカンマ区切りの文字列が格納されている(すなわち-1,4,5,7-)

私はDEPTのIDに関連付けられているすべての機器の項目を取得したいDEPARTMENT_IDを考えます。

質問を書くためのエレガントな方法があるのだろうか、各機器アイテムをつかんでdepartment_id列を分割し、IDが一致するかどうかを確認して、機器アイテムを別のリストに戻してください。

答えて

1

データを正しく正規化する方法はありますか?単一の列には、コンマで区切られたIDの文字列を決して含めないでください。

そうしないと、特定の質問に対する回答の多くが、正常に正規化されたデータベースと比較してうまく機能しなくなります。

+0

残念ながら、これは私が動作するように与えられたものです。私がそれを正規化することは可能です。もし私がその道を行くならば、私はプロセスを自動化する方法を検討しなければならないと思います。 – guest82

+0

は、.netフレームワークのプロファイルapiのメーカーにそのことを伝えます - dbに格納された拘束された文字列。 –

0

あなたは整数のリストを返すUDFとここに二つの主要なオプション

  1. スプリットを持っています。このUDFをEFにマップし、直接呼び出します。

  2. コードが返された後に分割されます。そのアイテムのリポジトリレイヤーを使用する場合、発信者への影響は、分割を処理するリポジトリからの要求と同じように、最小限です。

0

ここでは、特定のdepartment_idを含むすべてのレコードを返すソリューションです。

​​
関連する問題