有如下的表:
table:
id  name   addr   tel   phone  
1   name1  add1   tel1  phone1
2   name2  add2   tel2  phone2
3   name3  add1   tel3  phone3
4   name4  add3   tel4  phone4
5   name5  add2   tel5  phone5需要的输出为:
addr   name1  name2 name3 name4 name5
add1    1       0     1    0      0
add2    0       1     0    0      1   
add3    0       0     0    1      0我现在的解决办法是:
先找出 name的值,$arr_name = "select name from table";
再找出地址,$arr_addr = "select addr from table group by addr"
$i=0
foreach($arr_addr as $sin_addr){
  "select count(*) from table where name = $arr_name[$i] and addr = $sin_addr"
  $i++;
}
思路大概就是这样,但是效率很慢,请问还有更好的办法么?