从一个表中连接不同的行,从另一个表中连接多个匹配的行

时间:2015-08-13 17:16:05

标签: mysql join mysqli

我需要获取与表a不同的所有行,并将表b中与{b}匹配的行存储为不同结果中的数组,但我只是从表a获得多个结果返回。

基本上,我在一个表中有标题(每行是唯一的),然后是另一个表中的类型(可能存在与titles表中给定标题匹配的多行)。

是否可以从标题表中获取所有行(不同),并将类型表中的匹配结果添加为数组?

我只有这个:

tmdb_id

如果在genre_titles中找到多个匹配类型,则不会给出标题的明显结果。

我得到这样的输出:

$query = "SELECT DISTINCT a.*,b.tmdb_id AS genres FROM titles a JOIN genre_titles b ON b.title_id = a.tmdb_id ORDER BY a.sort_title ASC";
if($result = $mysqli->query($query)) $titles = mysqli_fetch_all($result, MYSQLI_ASSOC);

我希望得到的是:

[0] => Array
    (
        [id] => 217
        [tmdb_id] => 353958
        [display_title] => Revolution
        [sort_title] => Revolution
        [genres] => 9648
    )

[1] => Array
    (
        [id] => 217
        [tmdb_id] => 353958
        [display_title] => Revolution
        [sort_title] => Revolution
        [genres] => 18
    )

只有[0] => Array ( [id] => 217 [tmdb_id] => 353958 [display_title] => Revolution [sort_title] => Revolution [genres] => array ( [0] => 9648 [1] => 18 ) ) 可以吗?如果不是,我可以单独查询所有类型,并将array_column与mysql作为关键字作为参考,以供参考,但我想在一个查询中执行此操作。

0 个答案:

没有答案