ホームページ >バックエンド開発 >PHPチュートリアル >CRMシステムのデータ設計の問題

CRMシステムのデータ設計の問題

WBOY
WBOYオリジナル
2016-06-23 14:20:291131ブラウズ

crm データベースの最適化

前述したように、従業員 ID、名前、電話番号、住所、部門、その他の情報が含まれる従業員テーブルがあります。部門が本社でない場合は、引き続き上向きのレポートが表示されます。

次に、データベースを設計する必要があります。
1. 従業員を選択し、その従業員のレポート チェーンを書き出します。
2. あなたが部門マネージャーの場合は、その部門の下にあるすべての従業員をリストします。


私が思いついたアイデアは再帰を使用して解決することですが、量が多いことを考えると効率的ではないかもしれません。

何か良い最適化方法があればお聞きしたいです。再帰を使用する場合は、その方法の例をいくつか挙げてください。ありがとうございます

ディスカッション(解決策)への返信

データベース設計について聞きたいのか、それとも何を達成したいのかわかりません


データベース設計について聞きたいのか、それとも何を実現したいのかわかりません達成したいこと

データベース設計について聞きたいです

官僚主義とは何ですか?再帰を何回行うつもりですか?

1 回再帰した後、すべての部門を配列に書き込み、ファイルを保存します。

Depid は従業員テーブル、
部門テーブルに保存されます:
ID PID タイトル

どのような官僚制ですか?再帰を何回行うつもりですか?

再帰的な解決策はありますか?

再帰の量が多いと効率が悪いと考えますが、他に解決方法はありますか?

Depid は、employee テーブルに格納されます。もっと詳しく教えてください

部門テーブルに部門マネージャーを追加します

部門コード

01

0101

部門コードの設計が適切であれば、モデレーター方式は実行可能です。直接分割してレポート チェーンを見つけることができます。


部門コード

01

0101
010101

それでは、データベースレベルから設計したい場合、再帰を使用するだけでよいでしょうか?

たった 1 つのテーブルでparentID の区別が行われます

実際には、より詳細な手順が必要です。
より詳細な例がある方が良いでしょう。親愛なる神様

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。