Anonymous
Результат запроса CI дает неожиданный результат [закрыто]
Сообщение
Anonymous » 28 дек 2025, 22:15
Я использую активный класс платформы codeigniter для построения запроса, мой запрос поддерживается ниже, а выходные и ожидаемые выходные данные различаются. Я считаю, что результат запроса в браузере и результат запроса в phpmyadmin должны быть одинаковыми, но здесь это не так:
Код: Выделить всё
function searchProperty($data=array()){
if(!empty($data['status']) && $data['status']=="Occupied"){
$get_prop_ids = $this->getOccupiedProperty($data);
}
extract($data);
$this->db->select('p.*');
$this->db->from('properties p');
$this->db->join('prop_address pa', 'pa.prop_id = p.id','INNER');
$this->db->join('prop_details pd', 'pd.prop_id = p.id','INNER');
$this->db->join('property_type ptype', 'ptype.id = p.property_type_id');
$get_post_codes = array();
$this->db->where('p.status', 'Available');
$prop_ids = '0';
$post_codes_search = array();
$search_tearms = array();
if(empty(!$countkey)){
$postcode_1_condition = "";
$location_condition = "";
$display_addr_condition = "";
for($i=0; $i < $countkey; $i++){
$var_data = trim($data['search_'.$i]);
$search_tearms[] = $var_data;
$is_complete_address = $this->IsDisplayAddress($var_data);
if(!$is_complete_address){
$is_postCode = $this->isPostcode($var_data);
if($is_postCode){
$prop_ids_postcode = $this->getPropFromProVeiw('postcode',$var_data);
$post_codes_search[] = $var_data;
if(count($prop_ids_postcode)){
$prop_ids .= ','.implode(',',$prop_ids_postcode);
}
}else{
$is_location = $this->isLocation($var_data);
if($is_location){
$prop_ids_location = $this->getPropFromProVeiw('location',$var_data);
$prop_ids .= ','.implode(',',$prop_ids_location);
//var_dump($prop_ids);
}else{
$prop_ids_area = $this->getPropFromProVeiw('area',$var_data);
if(count($prop_ids_area)){
$prop_ids .= ','.implode(',',$prop_ids_area);
}else{
$prop_ids_street = $this->getPropFromProVeiw('street',$var_data);
$prop_ids .= ','.implode(',',$prop_ids_street);
}
}
}
}else{
$prop_ids .= $is_complete_address;
}
}
$prop_ids = trim($prop_ids,',');
$prop_ids = str_replace(",,,",",",$prop_ids);
$prop_ids = str_replace(",,",",",$prop_ids);
$prop_ids = explode(",",$prop_ids); //p($prop_ids);
$prop_ids = array_unique($prop_ids);
$additional_ids = implode(",",$prop_ids);
$this->db->where("p.id in ($additional_ids) ");
}
if(!empty($min)){
$this->db->where('pd.price_pw >=', $min);
}
if(!empty($max)){
$this->db->where('pd.price_pw =', $bed);
}*/
if(!empty($bed) || $bed=='0'){
$bed = (isset($bed)) ? $bed : [];
if(!is_array($bed)){
$bed = explode(',',$bed);
}
if(in_array(4,$bed)){
$bed[] = 5;
$bed[] = 6;
$bed[] = 7;
$bed[] = 8;
$bed[] = 9;
$bed[] = 10;
}
if(count($bed)){
$beds = implode(',',$bed);
$this->db->where("pd.bedrooms in ($beds)");
}
}
if(!empty($type) && $type == 'apartment'){
$this->db->where('ptype.prop_category', 'Apartment');
} elseif(!empty($type) && $type == 'house') {
$this->db->where('ptype.prop_category', 'House');
}
$tag = (!empty($tag)) ? $tag : "";
if($tag == 'furnished'){
$this->db->where('pd.furnished_type_id in (0,1)');
} elseif($tag == 'part-furnished') {
$this->db->where('pd.furnished_type_id in (1)');
} elseif($tag == 'unfurnished') {
$this->db->where('pd.furnished_type_id', 2);
} elseif($tag == 'furnished-unFurnished') {
$this->db->where('pd.furnished_type_id in (0,1,2,4)');
}
$this->db->where('pa.display_address !=', '');
//$this->db->where('pa.latitude !=', '');
//$this->db->where('pa.longitude !=', '');
$this->db->where('pa.postcode_1 !=', '');
if(!empty($get_prop_ids)){
$this->db->where("pd.price > 0 or p.id in ($get_prop_ids) ");
}else{
$this->db->where('pd.price >', 0);
}
if(!empty($sort) && $sort == 'highest'){
$this->db->order_by('pd.price_pw', 'desc');
} else {
$this->db->order_by('pd.price_pw', 'asc');
}
$this->db->group_by('p.agent_ref,p.id');
$tempdb = clone $this->db;
if(!empty($loadMorePage)) {
if($loadMorePage == 1){
$this->db->limit(10, 0);
} else {
$page_limit = 10*($loadMorePage-1);
$this->db->limit(10, $page_limit);
}
}
$query = $this->db->get();
$sql = $this->db->last_query();
$queryCount = $tempdb->get();
if( $query->num_rows() > 0 ){
$count = $queryCount->num_rows();
$result = $query->result();
$propertyData = $result;
} else {
$count = 0;
$propertyData = array();
}
//p($search_tearms);
$get_post_codes = $this->getAllpostCodes($propertyData,$post_codes_search,$search_tearms);
return array('count' => $count, 'propertyData' => $propertyData, 'query'=>$sql, 'postcodes'=>$get_post_codes);
}
Функция контроллера:
Код: Выделить всё
public function search_post(){
$postData = $this->post(); //p($postData);
$this->load->model('properties_model', 'properties');
$this->load->model('prop_details_model', 'prop_details');
$this->load->model('prop_address_model', 'prop_address');
$this->load->model('prop_features_model', 'prop_features');
$this->load->model('prop_media_model', 'prop_media');
$this->load->model('offices_model', 'office');
$this->load->model('Main_postcodes_model', 'main_postcode');
$loadMorePage = !empty($postData['loadMorePage']) ? $postData['loadMorePage'] : 1;
$properties = $this->properties->searchProperty($postData); //p($properties);
$property = $properties['propertyData'];
$count = $properties['count'];
foreach($property as $index => $prop){
$property[$index]->detail = $this->prop_details->getByPropid( $prop->id, $this->role_id );
$property[$index]->address = $this->prop_address->getByPropid( $prop->id );
$property[$index]->features = $this->prop_features->getByPropid( $prop->id );
$property[$index]->media = $this->prop_media->getMediaByPropid( $prop->id );
$property[$index]->mediaEpc = $this->prop_media->getMediaEPCByPropid( $prop->id );
$property[$index]->floorPlan = $this->prop_media->getMediaFPByPropid( $prop->id );
$property[$index]->branch = $this->office->getByPropcoCode( $prop->branch_id );
}
$similerProperties = array();
if(!empty($properties['postcodes'])){
$postData['min'] = (!empty($postData['min'])) ? $postData['min'] : '';
$postData['max'] = (!empty($postData['max'])) ? $postData['max'] : '';
$postData['type'] = (!empty($postData['type'])) ? $postData['type'] : '';
$postData['bed'] = (isset($postData['bed'])) ? $postData['bed'] : '';
$postData['type'] = (!empty($postData['type'])) ? $postData['type'] : '';
$postData['tag'] = (!empty($postData['tag'])) ? $postData['tag'] : '';
$postData['count_to_show'] = 10 - $count;
$postData['postcodes'] = $properties['postcodes'];
$postData['query'] = $properties['query'];
$similerProperties = $this->properties->similerPropSearch($postData );
$similerProperties = $similerProperties['propertyData'];
foreach($similerProperties as $index => $prop){
$similerProperties[$index]->detail = $this->prop_details->getByPropid( $prop->id, $this->role_id );
$similerProperties[$index]->address = $this->prop_address->getByPropid( $prop->id );
$similerProperties[$index]->features = $this->prop_features->getByPropid( $prop->id );
$similerProperties[$index]->media = $this->prop_media->getMediaByPropid( $prop->id );
$similerProperties[$index]->mediaEpc = $this->prop_media->getMediaEPCByPropid( $prop->id );
$similerProperties[$index]->floorPlan = $this->prop_media->getMediaFPByPropid( $prop->id );
$similerProperties[$index]->branch = $this->office->getByPropcoCode( $prop->branch_id );
}
}
if($loadMorePage > 1){
$properties = $property;
$myCarouselIndex = 10*($loadMorePage-1);
$this->_view_data['properties'] = $properties;
$this->_view_data['myCarouselIndex'] = $myCarouselIndex;
$this->_view_data['query'] = $postData['query'];
$this->_view_data['loadMorePage'] = $loadMorePage;
$propertyHtml = $this->load->view('frontend/property/loadmore-search', $this->_view_data, true);
echo $propertyHtml;
} else {
$response = array('type' => 'success', 'query'=>$properties['query'], 'message' => "", 'data' => $property, 'count' => $count, 'similerProperties' => $similerProperties);
$this->output->set_content_type('application/json')->set_output(json_encode($response));
}
}
Вывод ниже:
Код: Выделить всё
Array
(
[propertyData] => Array
(
[0] => stdClass Object
(
[id] => 1375
[agent_ref] => BR18739_000013590
[slug] =>
[branch_id] => BR18739
[status_id] => 0
[property_type_id] => 28
[is_published] => 1
[date_available] => 2018-09-10 00:00:00
[channel_id] => 2
[let_type_id] => 1
[location_name] => Beaufort Park
[status] => Available
[propco_created_at] => 2018-09-10 08:49:43
[propco_updated_at] => 2018-09-20 07:20:25
[created_by] => 3
[created_at] => 2018-10-01 03:06:12
[updated_by] => 3
[updated_at] => 2018-10-01 03:06:12
)
[1] => stdClass Object
(
[id] => 1129
[agent_ref] => 22864_000013421
[slug] =>
[branch_id] => 22864
[status_id] => 0
[property_type_id] => 28
[is_published] => 1
[date_available] => 2018-07-30 00:00:00
[channel_id] => 2
[let_type_id] => 1
[location_name] => Kew
[status] => Available
[propco_created_at] => 2018-07-30 06:53:40
[propco_updated_at] => 2018-09-04 11:53:59
[created_by] => 3
[created_at] => 2018-10-01 03:02:56
[updated_by] => 3
[updated_at] => 2018-10-01 03:02:56
)
[2] => stdClass Object
(
[id] => 1332
[agent_ref] => 22864_000013570
[slug] =>
[branch_id] => 22864
[status_id] => 0
[property_type_id] => 28
[is_published] => 1
[date_available] => 2018-09-04 00:00:00
[channel_id] => 2
[let_type_id] => 1
[location_name] => Kew
[status] => Available
[propco_created_at] => 2018-09-04 13:30:28
[propco_updated_at] => 2018-09-10 08:15:49
[created_by] => 3
[created_at] => 2018-10-01 03:06:06
[updated_by] => 3
[updated_at] => 2018-10-01 03:06:06
)
[3] => stdClass Object
(
[id] => 1414
[agent_ref] => 22864_000013611
[slug] =>
[branch_id] => 22864
[status_id] => 0
[property_type_id] => 28
[is_published] => 1
[date_available] => 2018-09-14 00:00:00
[channel_id] => 2
[let_type_id] => 1
[location_name] => Kew
[status] => Available
[propco_created_at] => 2018-09-14 07:52:15
[propco_updated_at] => 2018-09-20 08:42:53
[created_by] => 3
[created_at] => 2018-10-01 03:06:21
[updated_by] => 3
[updated_at] => 2018-10-01 03:06:21
)
[4] => stdClass Object
(
[id] => 1404
[agent_ref] => 22864_000013605
[slug] =>
[branch_id] => 22864
[status_id] => 0
[property_type_id] => 28
[is_published] => 1
[date_available] => 2018-09-13 00:00:00
[channel_id] => 2
[let_type_id] => 1
[location_name] => Kew
[status] => Available
[propco_created_at] => 2018-09-13 06:19:20
[propco_updated_at] => 2018-09-13 06:38:50
[created_by] => 3
[created_at] => 2018-10-01 03:06:17
[updated_by] => 3
[updated_at] => 2018-10-01 03:06:17
)
[5] => stdClass Object
(
[id] => 1318
[agent_ref] => BR22545_000003107
[slug] =>
[branch_id] => BR22545
[status_id] => 5
[property_type_id] => 9
[is_published] => 1
[date_available] => 2018-11-28 00:00:00
[channel_id] => 2
[let_type_id] => 1
[location_name] => Canary Wharf
[status] => Available
[propco_created_at] => 2013-05-01 14:10:13
[propco_updated_at] => 2018-09-10 07:14:17
[created_by] => 3
[created_at] => 2018-10-01 03:00:38
[updated_by] => 3
[updated_at] => 2018-10-01 03:00:38
)
[6] => stdClass Object
(
[id] => 1212
[agent_ref] => BR18739_000000626
[slug] =>
[branch_id] => BR18739
[status_id] => 5
[property_type_id] => 28
[is_published] => 1
[date_available] => 2018-09-19 00:00:00
[channel_id] => 2
[let_type_id] => 1
[location_name] => Beaufort Park
[status] => Available
[propco_created_at] => 2012-08-16 15:20:01
[propco_updated_at] => 2018-09-17 10:33:01
[created_by] => 3
[created_at] => 2018-10-01 03:00:43
[updated_by] => 3
[updated_at] => 2018-10-01 03:00:43
)
[7] => stdClass Object
(
[id] => 1403
[agent_ref] => BR18739_000006003
[slug] =>
[branch_id] => BR18739
[status_id] => 5
[property_type_id] => 9
[is_published] => 1
[date_available] => 2018-09-30 00:00:00
[channel_id] => 2
[let_type_id] => 1
[location_name] => Beaufort Park
[status] => Available
[propco_created_at] => 2016-01-22 10:47:09
[propco_updated_at] => 2018-09-20 07:40:16
[created_by] => 3
[created_at] => 2018-10-01 03:02:37
[updated_by] => 3
[updated_at] => 2018-10-01 03:02:37
)
[8] => stdClass Object
(
[id] => 7
[agent_ref] => BR17546_000002226
[slug] =>
[branch_id] => BR17546
[status_id] => 0
[property_type_id] => 9
[is_published] => 1
[date_available] => 2018-08-30 00:00:00
[channel_id] => 2
[let_type_id] => 1
[location_name] => Kensington
[status] => Available
[propco_created_at] => 2012-09-26 14:39:09
[propco_updated_at] => 2018-08-30 17:08:04
[created_by] => 3
[created_at] => 2018-10-01 03:00:06
[updated_by] => 3
[updated_at] => 2018-10-01 03:00:06
)
[9] => stdClass Object
(
[id] => 1177
[agent_ref] => 22582_000002037
[slug] =>
[branch_id] => 22582
[status_id] => 5
[property_type_id] => 9
[is_published] => 1
[date_available] => 2018-08-21 00:00:00
[channel_id] => 2
[let_type_id] => 1
[location_name] => Surrey Quays (Surrey Quays)
[status] => Available
[propco_created_at] => 2012-07-06 17:08:07
[propco_updated_at] => 2018-08-13 13:03:25
[created_by] => 3
[created_at] => 2018-10-01 03:05:03
[updated_by] => 3
[updated_at] => 2018-10-01 03:05:03
)
)
[query] => SELECT `p`.*
FROM `bnr_properties` `p`
JOIN `bnr_prop_address` `pa` ON `pa`.`prop_id` = `p`.`id`
JOIN `bnr_prop_details` `pd` ON `pd`.`prop_id` = `p`.`id`
JOIN `bnr_property_type` `ptype` ON `ptype`.`id` = `p`.`property_type_id`
WHERE `p`.`status` = 'Available'
AND `pa`.`display_address` != ''
AND `pa`.`postcode_1` != ''
AND `pd`.`price` >0
GROUP BY `p`.`agent_ref`, `p`.`id`
ORDER BY `pd`.`price_pw` ASC
LIMIT 10, 10
)
Там, где я выполняю этот запрос в phpmyadmin, я получаю другой порядок результатов.
Подробнее здесь:
https://stackoverflow.com/questions/525 ... ted-result
1766949346
Anonymous
Я использую активный класс платформы codeigniter для построения запроса, мой запрос поддерживается ниже, а выходные и ожидаемые выходные данные различаются. Я считаю, что результат запроса в браузере и результат запроса в phpmyadmin должны быть одинаковыми, но здесь это не так: [code]function searchProperty($data=array()){ if(!empty($data['status']) && $data['status']=="Occupied"){ $get_prop_ids = $this->getOccupiedProperty($data); } extract($data); $this->db->select('p.*'); $this->db->from('properties p'); $this->db->join('prop_address pa', 'pa.prop_id = p.id','INNER'); $this->db->join('prop_details pd', 'pd.prop_id = p.id','INNER'); $this->db->join('property_type ptype', 'ptype.id = p.property_type_id'); $get_post_codes = array(); $this->db->where('p.status', 'Available'); $prop_ids = '0'; $post_codes_search = array(); $search_tearms = array(); if(empty(!$countkey)){ $postcode_1_condition = ""; $location_condition = ""; $display_addr_condition = ""; for($i=0; $i < $countkey; $i++){ $var_data = trim($data['search_'.$i]); $search_tearms[] = $var_data; $is_complete_address = $this->IsDisplayAddress($var_data); if(!$is_complete_address){ $is_postCode = $this->isPostcode($var_data); if($is_postCode){ $prop_ids_postcode = $this->getPropFromProVeiw('postcode',$var_data); $post_codes_search[] = $var_data; if(count($prop_ids_postcode)){ $prop_ids .= ','.implode(',',$prop_ids_postcode); } }else{ $is_location = $this->isLocation($var_data); if($is_location){ $prop_ids_location = $this->getPropFromProVeiw('location',$var_data); $prop_ids .= ','.implode(',',$prop_ids_location); //var_dump($prop_ids); }else{ $prop_ids_area = $this->getPropFromProVeiw('area',$var_data); if(count($prop_ids_area)){ $prop_ids .= ','.implode(',',$prop_ids_area); }else{ $prop_ids_street = $this->getPropFromProVeiw('street',$var_data); $prop_ids .= ','.implode(',',$prop_ids_street); } } } }else{ $prop_ids .= $is_complete_address; } } $prop_ids = trim($prop_ids,','); $prop_ids = str_replace(",,,",",",$prop_ids); $prop_ids = str_replace(",,",",",$prop_ids); $prop_ids = explode(",",$prop_ids); //p($prop_ids); $prop_ids = array_unique($prop_ids); $additional_ids = implode(",",$prop_ids); $this->db->where("p.id in ($additional_ids) "); } if(!empty($min)){ $this->db->where('pd.price_pw >=', $min); } if(!empty($max)){ $this->db->where('pd.price_pw =', $bed); }*/ if(!empty($bed) || $bed=='0'){ $bed = (isset($bed)) ? $bed : []; if(!is_array($bed)){ $bed = explode(',',$bed); } if(in_array(4,$bed)){ $bed[] = 5; $bed[] = 6; $bed[] = 7; $bed[] = 8; $bed[] = 9; $bed[] = 10; } if(count($bed)){ $beds = implode(',',$bed); $this->db->where("pd.bedrooms in ($beds)"); } } if(!empty($type) && $type == 'apartment'){ $this->db->where('ptype.prop_category', 'Apartment'); } elseif(!empty($type) && $type == 'house') { $this->db->where('ptype.prop_category', 'House'); } $tag = (!empty($tag)) ? $tag : ""; if($tag == 'furnished'){ $this->db->where('pd.furnished_type_id in (0,1)'); } elseif($tag == 'part-furnished') { $this->db->where('pd.furnished_type_id in (1)'); } elseif($tag == 'unfurnished') { $this->db->where('pd.furnished_type_id', 2); } elseif($tag == 'furnished-unFurnished') { $this->db->where('pd.furnished_type_id in (0,1,2,4)'); } $this->db->where('pa.display_address !=', ''); //$this->db->where('pa.latitude !=', ''); //$this->db->where('pa.longitude !=', ''); $this->db->where('pa.postcode_1 !=', ''); if(!empty($get_prop_ids)){ $this->db->where("pd.price > 0 or p.id in ($get_prop_ids) "); }else{ $this->db->where('pd.price >', 0); } if(!empty($sort) && $sort == 'highest'){ $this->db->order_by('pd.price_pw', 'desc'); } else { $this->db->order_by('pd.price_pw', 'asc'); } $this->db->group_by('p.agent_ref,p.id'); $tempdb = clone $this->db; if(!empty($loadMorePage)) { if($loadMorePage == 1){ $this->db->limit(10, 0); } else { $page_limit = 10*($loadMorePage-1); $this->db->limit(10, $page_limit); } } $query = $this->db->get(); $sql = $this->db->last_query(); $queryCount = $tempdb->get(); if( $query->num_rows() > 0 ){ $count = $queryCount->num_rows(); $result = $query->result(); $propertyData = $result; } else { $count = 0; $propertyData = array(); } //p($search_tearms); $get_post_codes = $this->getAllpostCodes($propertyData,$post_codes_search,$search_tearms); return array('count' => $count, 'propertyData' => $propertyData, 'query'=>$sql, 'postcodes'=>$get_post_codes); } [/code] Функция контроллера: [code] public function search_post(){ $postData = $this->post(); //p($postData); $this->load->model('properties_model', 'properties'); $this->load->model('prop_details_model', 'prop_details'); $this->load->model('prop_address_model', 'prop_address'); $this->load->model('prop_features_model', 'prop_features'); $this->load->model('prop_media_model', 'prop_media'); $this->load->model('offices_model', 'office'); $this->load->model('Main_postcodes_model', 'main_postcode'); $loadMorePage = !empty($postData['loadMorePage']) ? $postData['loadMorePage'] : 1; $properties = $this->properties->searchProperty($postData); //p($properties); $property = $properties['propertyData']; $count = $properties['count']; foreach($property as $index => $prop){ $property[$index]->detail = $this->prop_details->getByPropid( $prop->id, $this->role_id ); $property[$index]->address = $this->prop_address->getByPropid( $prop->id ); $property[$index]->features = $this->prop_features->getByPropid( $prop->id ); $property[$index]->media = $this->prop_media->getMediaByPropid( $prop->id ); $property[$index]->mediaEpc = $this->prop_media->getMediaEPCByPropid( $prop->id ); $property[$index]->floorPlan = $this->prop_media->getMediaFPByPropid( $prop->id ); $property[$index]->branch = $this->office->getByPropcoCode( $prop->branch_id ); } $similerProperties = array(); if(!empty($properties['postcodes'])){ $postData['min'] = (!empty($postData['min'])) ? $postData['min'] : ''; $postData['max'] = (!empty($postData['max'])) ? $postData['max'] : ''; $postData['type'] = (!empty($postData['type'])) ? $postData['type'] : ''; $postData['bed'] = (isset($postData['bed'])) ? $postData['bed'] : ''; $postData['type'] = (!empty($postData['type'])) ? $postData['type'] : ''; $postData['tag'] = (!empty($postData['tag'])) ? $postData['tag'] : ''; $postData['count_to_show'] = 10 - $count; $postData['postcodes'] = $properties['postcodes']; $postData['query'] = $properties['query']; $similerProperties = $this->properties->similerPropSearch($postData ); $similerProperties = $similerProperties['propertyData']; foreach($similerProperties as $index => $prop){ $similerProperties[$index]->detail = $this->prop_details->getByPropid( $prop->id, $this->role_id ); $similerProperties[$index]->address = $this->prop_address->getByPropid( $prop->id ); $similerProperties[$index]->features = $this->prop_features->getByPropid( $prop->id ); $similerProperties[$index]->media = $this->prop_media->getMediaByPropid( $prop->id ); $similerProperties[$index]->mediaEpc = $this->prop_media->getMediaEPCByPropid( $prop->id ); $similerProperties[$index]->floorPlan = $this->prop_media->getMediaFPByPropid( $prop->id ); $similerProperties[$index]->branch = $this->office->getByPropcoCode( $prop->branch_id ); } } if($loadMorePage > 1){ $properties = $property; $myCarouselIndex = 10*($loadMorePage-1); $this->_view_data['properties'] = $properties; $this->_view_data['myCarouselIndex'] = $myCarouselIndex; $this->_view_data['query'] = $postData['query']; $this->_view_data['loadMorePage'] = $loadMorePage; $propertyHtml = $this->load->view('frontend/property/loadmore-search', $this->_view_data, true); echo $propertyHtml; } else { $response = array('type' => 'success', 'query'=>$properties['query'], 'message' => "", 'data' => $property, 'count' => $count, 'similerProperties' => $similerProperties); $this->output->set_content_type('application/json')->set_output(json_encode($response)); } } [/code] Вывод ниже: [code]Array ( [propertyData] => Array ( [0] => stdClass Object ( [id] => 1375 [agent_ref] => BR18739_000013590 [slug] => [branch_id] => BR18739 [status_id] => 0 [property_type_id] => 28 [is_published] => 1 [date_available] => 2018-09-10 00:00:00 [channel_id] => 2 [let_type_id] => 1 [location_name] => Beaufort Park [status] => Available [propco_created_at] => 2018-09-10 08:49:43 [propco_updated_at] => 2018-09-20 07:20:25 [created_by] => 3 [created_at] => 2018-10-01 03:06:12 [updated_by] => 3 [updated_at] => 2018-10-01 03:06:12 ) [1] => stdClass Object ( [id] => 1129 [agent_ref] => 22864_000013421 [slug] => [branch_id] => 22864 [status_id] => 0 [property_type_id] => 28 [is_published] => 1 [date_available] => 2018-07-30 00:00:00 [channel_id] => 2 [let_type_id] => 1 [location_name] => Kew [status] => Available [propco_created_at] => 2018-07-30 06:53:40 [propco_updated_at] => 2018-09-04 11:53:59 [created_by] => 3 [created_at] => 2018-10-01 03:02:56 [updated_by] => 3 [updated_at] => 2018-10-01 03:02:56 ) [2] => stdClass Object ( [id] => 1332 [agent_ref] => 22864_000013570 [slug] => [branch_id] => 22864 [status_id] => 0 [property_type_id] => 28 [is_published] => 1 [date_available] => 2018-09-04 00:00:00 [channel_id] => 2 [let_type_id] => 1 [location_name] => Kew [status] => Available [propco_created_at] => 2018-09-04 13:30:28 [propco_updated_at] => 2018-09-10 08:15:49 [created_by] => 3 [created_at] => 2018-10-01 03:06:06 [updated_by] => 3 [updated_at] => 2018-10-01 03:06:06 ) [3] => stdClass Object ( [id] => 1414 [agent_ref] => 22864_000013611 [slug] => [branch_id] => 22864 [status_id] => 0 [property_type_id] => 28 [is_published] => 1 [date_available] => 2018-09-14 00:00:00 [channel_id] => 2 [let_type_id] => 1 [location_name] => Kew [status] => Available [propco_created_at] => 2018-09-14 07:52:15 [propco_updated_at] => 2018-09-20 08:42:53 [created_by] => 3 [created_at] => 2018-10-01 03:06:21 [updated_by] => 3 [updated_at] => 2018-10-01 03:06:21 ) [4] => stdClass Object ( [id] => 1404 [agent_ref] => 22864_000013605 [slug] => [branch_id] => 22864 [status_id] => 0 [property_type_id] => 28 [is_published] => 1 [date_available] => 2018-09-13 00:00:00 [channel_id] => 2 [let_type_id] => 1 [location_name] => Kew [status] => Available [propco_created_at] => 2018-09-13 06:19:20 [propco_updated_at] => 2018-09-13 06:38:50 [created_by] => 3 [created_at] => 2018-10-01 03:06:17 [updated_by] => 3 [updated_at] => 2018-10-01 03:06:17 ) [5] => stdClass Object ( [id] => 1318 [agent_ref] => BR22545_000003107 [slug] => [branch_id] => BR22545 [status_id] => 5 [property_type_id] => 9 [is_published] => 1 [date_available] => 2018-11-28 00:00:00 [channel_id] => 2 [let_type_id] => 1 [location_name] => Canary Wharf [status] => Available [propco_created_at] => 2013-05-01 14:10:13 [propco_updated_at] => 2018-09-10 07:14:17 [created_by] => 3 [created_at] => 2018-10-01 03:00:38 [updated_by] => 3 [updated_at] => 2018-10-01 03:00:38 ) [6] => stdClass Object ( [id] => 1212 [agent_ref] => BR18739_000000626 [slug] => [branch_id] => BR18739 [status_id] => 5 [property_type_id] => 28 [is_published] => 1 [date_available] => 2018-09-19 00:00:00 [channel_id] => 2 [let_type_id] => 1 [location_name] => Beaufort Park [status] => Available [propco_created_at] => 2012-08-16 15:20:01 [propco_updated_at] => 2018-09-17 10:33:01 [created_by] => 3 [created_at] => 2018-10-01 03:00:43 [updated_by] => 3 [updated_at] => 2018-10-01 03:00:43 ) [7] => stdClass Object ( [id] => 1403 [agent_ref] => BR18739_000006003 [slug] => [branch_id] => BR18739 [status_id] => 5 [property_type_id] => 9 [is_published] => 1 [date_available] => 2018-09-30 00:00:00 [channel_id] => 2 [let_type_id] => 1 [location_name] => Beaufort Park [status] => Available [propco_created_at] => 2016-01-22 10:47:09 [propco_updated_at] => 2018-09-20 07:40:16 [created_by] => 3 [created_at] => 2018-10-01 03:02:37 [updated_by] => 3 [updated_at] => 2018-10-01 03:02:37 ) [8] => stdClass Object ( [id] => 7 [agent_ref] => BR17546_000002226 [slug] => [branch_id] => BR17546 [status_id] => 0 [property_type_id] => 9 [is_published] => 1 [date_available] => 2018-08-30 00:00:00 [channel_id] => 2 [let_type_id] => 1 [location_name] => Kensington [status] => Available [propco_created_at] => 2012-09-26 14:39:09 [propco_updated_at] => 2018-08-30 17:08:04 [created_by] => 3 [created_at] => 2018-10-01 03:00:06 [updated_by] => 3 [updated_at] => 2018-10-01 03:00:06 ) [9] => stdClass Object ( [id] => 1177 [agent_ref] => 22582_000002037 [slug] => [branch_id] => 22582 [status_id] => 5 [property_type_id] => 9 [is_published] => 1 [date_available] => 2018-08-21 00:00:00 [channel_id] => 2 [let_type_id] => 1 [location_name] => Surrey Quays (Surrey Quays) [status] => Available [propco_created_at] => 2012-07-06 17:08:07 [propco_updated_at] => 2018-08-13 13:03:25 [created_by] => 3 [created_at] => 2018-10-01 03:05:03 [updated_by] => 3 [updated_at] => 2018-10-01 03:05:03 ) ) [query] => SELECT `p`.* FROM `bnr_properties` `p` JOIN `bnr_prop_address` `pa` ON `pa`.`prop_id` = `p`.`id` JOIN `bnr_prop_details` `pd` ON `pd`.`prop_id` = `p`.`id` JOIN `bnr_property_type` `ptype` ON `ptype`.`id` = `p`.`property_type_id` WHERE `p`.`status` = 'Available' AND `pa`.`display_address` != '' AND `pa`.`postcode_1` != '' AND `pd`.`price` >0 GROUP BY `p`.`agent_ref`, `p`.`id` ORDER BY `pd`.`price_pw` ASC LIMIT 10, 10 ) [/code] Там, где я выполняю этот запрос в phpmyadmin, я получаю другой порядок результатов. [img]https://i.sstatic.net/2B7jV.png[/img] Подробнее здесь: [url]https://stackoverflow.com/questions/52585641/ci-query-result-giving-unexpected-result[/url]