3 回答

TA貢獻(xiàn)1802條經(jīng)驗(yàn) 獲得超10個(gè)贊
根據(jù)您的評(píng)論,我認(rèn)為您需要一個(gè)分組查詢。
$userBikes = array('862549040389788','12345');
$data = DB::table('geolocation')
->whereIn('Imei', $userBikes)
->groupBy('Imei')
->selectRaw('any_value(id) as id, any_value(Lat) as Lat, any_value(Lng) as Lng, any_value(created_at) as created_at, Imei')
->get();

TA貢獻(xiàn)1785條經(jīng)驗(yàn) 獲得超4個(gè)贊
如果您希望$userBikes數(shù)組中的每個(gè)元素有 1 個(gè)值,則需要進(jìn)行 2 個(gè)不同的查詢。
$userBikes = array('862549040389788','12345');
$output = array();
foreach($userBikes as $imei) {
$data = DB::table('geolocation')
->where('Imei',$imei)
->take(1)
->get()->toArray();
array_push($output, $data)
return $output;
第二種解決方案是take(1)從查詢中刪除并過濾數(shù)據(jù)對(duì)象中的每個(gè)值。

TA貢獻(xiàn)1807條經(jīng)驗(yàn) 獲得超9個(gè)贊
您必須take(1)
從查詢中刪除。
Take(1) 會(huì)將結(jié)果限制為 1 行。
所以應(yīng)該是:
$data = DB::table('geolocation') ->whereIn('Imei',$userBikes) ->get();
- 3 回答
- 0 關(guān)注
- 145 瀏覽
添加回答
舉報(bào)