有4种接收方式。 1)交付2)提货3)mobile_topup 4)bank_deposit
如果有2个移动充值,我只需要一个。但是,如果有2种传递方法,那么我需要它们。为此,我创建了这个查询:
$clause = "SELECT id FROM beneficiary_payment_info
GROUP BY IF(ben_payment_method='mobile_topup', '', ben_payment_method)";
但是,问题是,它也是按照交付方式分组的。我不想要那个。
现在,我在数据库中有2 mobile_topup
,2 delivery
和bank deposit
。
我需要1 mobile_topup
,2 delivery
和1 bank deposit
。
我只是想知道这个查询是否可行,或者我需要在php
中进行此操作?
修改
临时,在php
我有这个解决方案。但是,它看起来并不可靠。
$mobile_count = array();
for($i=0; $i<count($data); $i++){
if($data[$i]['ben_payment_method']=='mobile_topup'){
//unset($data[$i]);
array_push($mobile_count, $i);
}
}
if(count($mobile_count) > 1){
for($i=0; $i<count($mobile_count)-1; $i++){
unset($data[$mobile_count[$i]]);
}
}
答案 0 :(得分:1)
$clause = "SELECT id FROM beneficiary_payment_info
GROUP BY IF(ben_payment_method='mobile_topup', ben_payment_method, id,)";