0

codeigniter 2xx を使用しています。Mysql テーブル:

create table hobby (
id int,
school varchar,
classes varchar,
basketball text,  {12,15,17...}
football text,  {12,18,20...}
swimming text {11,15,....}
);

バスケットボール、サッカー、水泳などのmysqlテーブルフィールドに、学生IDをシリアル化(配列(整数))として保存する予定です。
特定のクラスの学生 ID (例: 12) を調べたいのですが、彼が趣味に参加したり、codeigniter アクティブ レコード メソッドを使用して 1 つ以上の趣味に参加したりしましたが、行き詰まりました。以下は私のコードです:

$this->db->select('basketball','football','swimming');
$this->db->or_where('school', $data)->where('classes', $classid)->where_in($student_id, 'basketball');
$this->db->or_where('school', $data)->where('classes', $classid)->where_in($student_id, 'football');
$this->db->or_where('school', $data)->where('classes', $classid)->where_in($student_id, 'swimming');
$query = $this->db->get('hobby');  

または、情報を保存および処理するためのより良い方法はありますか?

4

1 に答える 1