0

私は、食料品のクラッドを使用する CodeIgniter プロジェクトに取り組んでいます。

私はこのコードを使用しています:

$crud->set_table('dtr');
$crud->set_relation_n_n('branch', 'users_branches', 'branches', 'user_id', 'branch_id', 'name');

SQL では、これに相当するものは次のとおりです。

SELECT `dtr`.*, (SELECT GROUP_CONCAT(DISTINCT branches.name) 
FROM branches 
LEFT JOIN users_branches ON users_branches.branch_id = branches.id WHERE
>> users_branches.user_id = `dtr`.id    
GROUP BY users_branches.user_id) AS branch FROM (`dtr`)

しかし、私がしたいことはこれです:

SELECT `dtr`.*, (SELECT GROUP_CONCAT(DISTINCT branches.name) FROM branches LEFT JOIN users_branches ON users_branches.branch_id = branches.id WHERE
users_branches.user_id = `dtr`.user_id    
GROUP BY users_branches.user_id) AS branch FROM (`dtr`)

テーブル dtr の主キーが「user_id」ではなく「id」であるため、必要な方法でそれを実現できません。さらに、主キーを変更すると、システムの他の部分で多くのエラーが発生します。したがって、正しく機能するように、別の方法でコーディングする方法を見つける必要があります。

助けてください。ありがとう。

4

0 に答える 0