Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Wyszukiwanie i kolejność tabel danych łączących tabele utknęła z kodeigniterem

w oparciu o Twoje modele, możesz je modyfikować tak jak poniżej

private function _get_datatables_query($term=''){ //term is value of $_REQUEST['search']['value']
    $column = array('k.id_kota','k.nm_kota', 'p.nm_propinsi');
    $this->db->select('k.id_kota, k.nm_kota, p.nm_propinsi');
    $this->db->from('kota as k');
    $this->db->join('propinsi as p', 'p.id_propinsi = k.id_propinsi','left');
    $this->db->like('k.id_kota', $term);
    $this->db->or_like('k.nm_kota', $term);
    $this->db->or_like('p.nm_propinsi', $term);
    if(isset($_REQUEST['order'])) // here order processing
    {
       $this->db->order_by($column[$_REQUEST['order']['0']['column']], $_REQUEST['order']['0']['dir']);
    } 
    else if(isset($this->order))
    {
       $order = $this->order;
       $this->db->order_by(key($order), $order[key($order)]);
    }
}

function get_datatables(){
  $term = $_REQUEST['search']['value'];   
  $this->_get_datatables_query($term);
  if($_REQUEST['length'] != -1)
  $this->db->limit($_REQUEST['length'], $_REQUEST['start']);
  $query = $this->db->get();
  return $query->result(); 
}

function count_filtered(){
  $term = $_REQUEST['search']['value']; 
  $this->_get_datatables_query($term);
  $query = $this->db->get();
  return $query->num_rows();  
}

public function count_all(){
  $this->db->from($this->table);
  return $this->db->count_all_results();  
}


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak pozyskiwać nowych użytkowników dziennie w MySQL?

  2. MySQL Dołącz do tej samej tabeli

  3. Udane wstrzyknięcie SQL pomimo magicznych cytatów PHP

  4. COUNT(id) vs. COUNT(*) w MySQL

  5. Zapytanie Mysql w celu ustalenia, czy podana data i godzina jest uwzględniona w przedziale datetime