在数组中使用join和push结果

时间:2014-09-19 10:14:01

标签: php mysql sql join

我有两个表,名称和图片

名称表:

enter image description here

图片表:

enter image description here

我想在php(通过使用sql)中编写一个函数,它获取一个id并返回如下结果:

//假设我向此函数发送了1 ...

  

result = array(" name" =>" Name1"," pics" =>" url6-url7");

URLS中有连字符。

有什么帮助?

3 个答案:

答案 0 :(得分:2)

`Try this code its working 

SELECT GROUP_CONCAT(category.pics SEPARATOR '-') as newpics, company.id as searchid FROM `category` inner join  company on (company.id = category.cmp_id) where category.cmp_id = 2

答案 1 :(得分:1)

function whatIsThis($id){
   global $db;
   $sql = "select name, pics from names,pics where names.ID = pics.Name_ID AND names.ID = ".$id;
   $res = $db->query($sql);
   // Logic starts here...
   foreach($res as $rk=>$rv){ 
      $result['name'] = $rv['name'];
      $r[] = $rv['pics'];
   }
   $result['pics'] = implode('-',$r);
   return $result;
}
$iWant = whatIsThis('1');

我已经使用我自己的数据库类进行查询,你可以使用自己的..
$iWant会根据需要返回数组!

答案 2 :(得分:0)

在$ sql中考虑你的sql结果,使用var_dump打印结果,你将得到你想要的数组形式的输出结果:)