sql >> データベース >  >> RDS >> Mysql

CodeIgniter / PHP / MySQL:JOINを使用したデータの取得

    ジョンは正しい。次に例を示します:

    $this->db->select('movies.id, 
                       movies.title, 
                       movies.year, 
                       movies.runtime as totaltime,  
                       posters.poster_url');
    $this->db->from('movies');
    $this->db->join('posters', 'movies.id= posters.id');
    $this->db->where('movies.id', $id);
    $q = $this->db->get();
    

    これにより、-> id、-> title、-> year、-> totaltime、および->poster_urlプロパティを持つオブジェクトが返されます。各行からデータをフェッチするために追加のコードは必要ありません。

    Active Recordの構文が少し扱いに​​くい場合は、完全なSQLクエリを使用して同じ結果を得ることができることを忘れないでください:

    $sql = "SELECT movies.id,
            movies.title,
            movies.year,
            movies.runtime as totaltime,
            posters.poster_url
            FROM movies
            INNER JOIN posters ON movies.id = posters.id
            WHERE movies.id = ?"
    
    return $this->db->query($sql, array($id))->result();
    

    どちらの形式でも、データが適切にエスケープされるようになります。

    CodeIgniter Active Record

    CodeIgniterでのクエリバインディング



    1. MariaDBで数値をフォーマットする方法

    2. mysqlコマンドラインユーティリティを使用してmysql内のすべての予約語を一覧表示する方法はありますか

    3. 巨大なテーブルの列タイプを変更する

    4. ORACLE_HOMEのクローン