将行组合成mysql中的列

时间:2015-11-24 12:43:16

标签: php mysql sql

我有一个表客户(id_customer,email,id_default_group)和product_list(id_item,id_product,id_group,product_title,image,html_product,price,reduced_price,reduction_pourcentage)和banner_list(id_banner,id_group,html) 我想加入id_group表 我想从product_list和banner_list获取客户的所有电子邮件以及来自product_list和banner_list的customer.id_group = id_group的所有信息,

所有这些我可以通过一个简单的SQL查询得到它,但我想以特定的形式获得结果数组,

预期结果行: 电子邮件, product_title_1,image_1,html_product_1,price_1,reduced_price_1,reduction_pourcentage_1,product_title_2,.....,reduction_pourcentage_2,product_title_n,.....,reduction_pourcentage_n,banner_list.html_1,banner_list.html_2,banner_list.html_z

我试过这个PHP代码,但它没有给我我想要的东西

 for($i=1;$i<$nb_product;$i++){
        $sql = 'SELECT  c.`email`
             FROM  `'._DB_PREFIX_.'customer` c
            UNION ALL
            Select 
            pl.title,pl.image,pl.html,pl.price,pl.price_barre,pl.pourcentage 
            FROM `'._DB_PREFIX_.'product_list` pl
             WHERE 1 '.Shop::addSqlRestriction(Shop::SHARE_CUSTOMER).' and pl.id_item='.$i.' and pl.id_group =c.id_default_group
                                ORDER BY c.`id_customer` ASC';

        $res[]= Db::getInstance(_PS_USE_SQL_SLAVE_)->executeS($sql);
        } 

0 个答案:

没有答案