説明されているように、3つのモデル/テーブルがあります
holding
ある時点でのポートフォリオの個々の財務保有。ここのフィールドはid
、、、、date
sedol_id
value
sedol
sedol 固有のデータを含むテーブル。
asset
資産に関するより一般的なデータ。複数のセドルが同じアセットを参照できますが、セドルは 1 つのアセットのみを参照します。
リンクの概要は次のとおりです。
Cake でモデルを関連付けるのに苦労しています。どのモデルhasOne
、hasMany
またはbelongsTo
他のモデル。多くの組み合わせを試しましたが、メモリ不足のエラー (無限ループ?) または結合が正しく行われていない SQL エラーが発生します。
私の質問が明確でない場合の例を次に示します。
holding
Vodafone PLCの株式であるレコードがあるとします。これは、次のように所蔵テーブルに表示される場合があります
id | sedol | date | value
---------------------------------------
123456 | 16GWD5 | 2013-09-15 | 15456.25
現在、この持ち株の sedol は、共有固有の情報を持つ Sedol テーブルを参照しています。SEDOL テーブル内のこの情報の中には、会社自体を参照する ips_asset_id があります。たとえば、Vodafone はいくつかの異なるクラスの株式 (セドルで表される) を持っている可能性がありますが、会社の株式のファンダメンタルズは ips_assets テーブルにあります。
編集: OK 結合を解決したと思いますが、データベースにクエリを実行してすべてのセドルを検索すると、すべての保有を取得しようとしますが、保有テーブルからデータを取得するだけです。何か案は?