Saya pikir Anda memerlukan GROUP_CONCAT
Lakukan sesuatu seperti ini:-
SELECT
movies.*,
group_concat(links.link ', ') as links
FROM movies
LEFT JOIN links
ON links.movieid = movies.movieid
GROUP BY movies.movieid
Anda akan mendapatkan daftar tautan yang dipisahkan koma untuk setiap film. Yang dapat Anda ekstrak seperti ini:-
foreach ($movies->result() as $row) {
$linksArray = explode(",",$row->links);
}
Pembaruan Saya pikir ini adalah satu-satunya cara Anda bisa mendapatkan hasil tanpa memiliki beberapa baris hasil untuk satu film dengan banyak tautan.
Berhati-hatilah dengan panjang maksimum karakter yang bisa Anda dapatkan dalam hasil - secara default 1024 karakter. Baca iniMysql group_concat_max_length dan Panjang maksimum concat grup untuk mengetahui cara mengganti batas.
Dan seperti yang ditunjukkan Dan Grossman, jika Anda merasa tautan mungkin mengandung koma, gunakan pembatas yang berbeda atau tidak biasa.