0
私を助けてください。3つのテーブルの複雑なクエリを書く方法は?
var $hasAndBelongsToMany = array(
'Users' => array (
'className' => 'User',
'join_table' => 'messages_users',
'foreignKey' => 'message_id',
'associationForeignKey' => 'reciever_id',
'conditions'=> array('MessagesUser.reciever_id => $this->Session->read("Id")')
)
);
はだから今、私が取得するために、SQLクエリを作成したい、と私はので、私は、このためのメッセージモデルでHABTMの関係を使用しています
Users:id,name....
Message:id,title....
Messages_Users:id,message_id,sender_id,receiver_id......
、と3つのテーブルを持っていますログインした特定のユーザーにメッセージを送信したユーザーのすべての友人の名前。
私はユーザーがログインすると、彼はメッセージのリストを取得し、彼は送信者の名前をwidに沿って取得します。
messages_controllerでこれをどのように書き込むか?誰もが任意のアイデアを持っている場合
使用して、つまり
SELECT users.name, users.id, COUNT(*)
FROM users, message_users
WHERE users.id=message_users.sender_id
AND message_users.receiver_id=$current_user_id
GROUP BY users.name, users.id
ORDER BY COUNT(*) DESC
....私はORMはcackephpで動作しますが、あなたが必要とするクエリがあるかさっぱりだが...