0

このSQLを使用すると、最初のテーブルのmem_nameの結果が何度も繰り返されます。どうすれば修正できますか

    <?php     
    $sql="SELECT mc.mc_id,mc.mc_role,mc.mc_order,mc.mc_order IS NULL AS isnull, mem.*
                    FROM $this->memberCatsTableName mc, $this->tableName mem

                    WHERE mc.cat_id=$cat_id $where  AND mc.member_id=mem.mem_id or mem.mem_name='$mem_name'

                    ORDER BY isnull ASC, mc.mc_order ASC";

            $query = $this->db->query($sql);
            return $query->result_array();
?>
4

2 に答える 2

1

ここに変更されたクエリがあります..

<?php     
    $sql="SELECT mc.mc_id,mc.mc_role,mc.mc_order,mc.mc_order IS NULL AS isnull, mem.*
                    FROM $this->memberCatsTableName mc, $this->tableName mem

                    WHERE mc.cat_id=$cat_id $where  AND mc.member_id=mem.mem_id or mem.mem_name='$mem_name' 

       Group by mem.mem_name 

                    ORDER BY isnull ASC, mc.mc_order ASC";

            $query = $this->db->query($sql);
            return $query->result_array();
?>

クエリでグループ化できます。

Or you can also specify the join criteria

その助けを願っています。

于 2012-05-18T04:22:53.070 に答える
0

結合基準を指定する必要があります。

于 2012-05-16T12:57:49.970 に答える