Home » Codeigniter » Contoh Query Builder Codeigniter Where dan Where in

Contoh Query Builder Codeigniter Where dan Where in

Published by Ade Kurniawan on

codeigniter where

Where merupakan sebuah kondisi yang sering digunakan saat menampilkan data. Untuk Membuat Query builder Codeigniter where dan where in memerlukan pemahaman SQL terlebih dahulu.

Karakteristik dan penggunaan SQL Kondisi “WHERE

Where operator menampilkan data tertentu.

Contoh ketika ingin menampilkan data karyawan yang berasal dari jakarta.

maka dapat digunakan query where

Select * from karyawan where alamat = 'jakarta'

Penerapan sql where di atas dapat diimplimentasikan pada bentuk berikut di query builder codeigniter

Bentuk 1 Query builder codeigniter where pada model :

public function karyawan_where()
    {        
        $this->db->select('*');
        $this->db->from('karyawan');
        $this->db->where('alamat','jakarta');
        return  $this->db->get();
    }

Bentuk 2 Query Builder Codeiniter where:

public function karyawan_where()
    {        
      return  $this->db->get_where('karyawan', array('alamat' => 'jakarta'));
    }

Karakteristik dan penggunaan SQL Kondisi “WHERE IN

Where operator menampilkan data tertentu secara multi.

Sebagai contoh jika ingin menampilkan data karyawan yang memlliki alamat di jakarta dan bandung maka dapat digunakan where in

Select * from karyawan where alamat = 'jakarta','bandung'

Penerapan sql where in pada query builder codeigniter

Bentuk 1 Query Builder Codeigniter where in

 public function karyawan_where_in()
    {
        $this->db->select('*');
        $this->db->from('karyawan');
        $this->db->where_in('alamat', array('jakarta','bandung'));
        return $this->db->get();
    }

Bentuk 2 Query Builder Codeigniter where in

public function karyawan_where_in()
    {        
        $this->db->where_in('alamat', array('jakarta', 'bandung'));
        return $this->db->get('karyawan');
    }

Masing – masing query builder codeigneter di atas memiliki 2 bentuk penulisan.

Bentuk 1 dan 2 memiliki ouput yang sama. Silahkan digunakan sesuai dengan keinginan. Salah satu Pertimbangan lebih baik menggunakan bentuk 1 atau 2 adalah jumlah baris dan code yang digunakan.

Query builder “Bentuk 2” pada masing – masing contoh memiliki jumlah code dan baris yang lebih sedikit.

Manfaat yang didapat dari dibuatnya query builder codeigniter adalah membuat query dengan minimal scripting. Untuk kasus di atas penggunaan bentuk 2 akan menjaid pilihan terbaik karena menggunakan code atau script yang lebih sedikit.

Contoh Program Codeigniter Mengunakan Kondisi Where dan Where in

1. Buatlah Database “indonetsource” di phpmyadmin. (Silahkan buat database dengan nama lain atau gunakan database yang sudah ada

2. Buatlah tabel karyawan pada database

CREATE TABLE `karyawan` (
 `id` int(11) NOT NULL AUTO_INCREMENT,
 `nama` varchar(50) NOT NULL,
 `jenis_kelamin` enum(‘Laki-laki’,’Perempuan’) NOT NULL,
 `alamat` varchar(100) NOT NULL,
 PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=11 DEFAULT CHARSET=latin1

.3. Instalasi codeigniter pada komputer dan lakukan config database untuk koneksi database ke codeigniter project.

4. Selesaikan script pada Model, Controller dan View

Script Model

dibuat pada namaproject/application/models

M_karyawan.php

<?php 
class m_karyawan extends CI_Model{

	public function karyawan(){
        //query menampilkan semua data karyawan
		return $this->db->get('karyawan');
	}

    public function karyawan_where($alamat)
    {      
        //query menampilkan data karyawan berdasarkan alamat tertentu  
      return  $this->db->get_where('karyawan', $alamat);
    }

    public function karyawan_where_in($alamat_in)
    {    
        //query menampilkan data karyawan berdasarkan alamat tertentu secara multi
        $this->db->where_in('alamat',$alamat_in);
        return $this->db->get('karyawan');
    }   

}

Script Controller

dibuat pada namaproject/application/controllers

Karyawan.php

<?php 
class Karyawan extends CI_Controller{
	
	function __construct()
	{
		parent::__construct();	
		$this->load->model('m_karyawan');
	}

    public function index(){
        $data['karyawan'] = $this->m_karyawan->karyawan()->result();        
        $alamat = array('alamat' => 'jakarta');              
        $data['karyawan_where'] = $this->m_karyawan->karyawan_where($alamat)->result();
        $alamat_in = array('jakarta','bandung');                
        $data['karyawan_where_in'] = $this->m_karyawan->karyawan_where_in($alamat_in)->result();                          
        $this->load->view('karyawan',$data);        
    }    
}

Script View

dibuat pada namaproject/application/view

karyawan.php

<!DOCTYPE html>
<html>

<head>
    <link rel="stylesheet" href="http://localhost/indonetsource/bootstrap/css/bootstrap.min.css">
</head>

<body>
    <div class="container">          
        <div class="card">
            <div class="card-header">
                <h4>Data Karyawan</h4>
            </div>
            <div class="card-body">
                <table class="table table-sm table-bordered table-info">
                    <thead>
                        <tr>
                            <th>No</th>
                            <th>Nama</th>
                            <th>Jenis Kelamin</th>
                            <th>Alamat</th>
                        </tr>
                    </thead>
                    <tbody>
                        <?php
                        $no = 1;
                        foreach ($karyawan as $karyawan) :
                        ?>
                            <tr>
                                <td><?= $no++ ?></td>
                                <td><?= $karyawan->nama; ?></td>
                                <td><?= $karyawan->jenis_kelamin; ?></td>
                                <td><?= $karyawan->alamat; ?></td>
                            </tr>
                        <?php endforeach ?>
                    </tbody>
                </table>
            </div>
        </div>
        <div class="card">
            <div class="card-header">
                <h4>Data Karyawan WHERE Jakarta</h4>
            </div>
            <div class="card-body">
                <table class="table table-sm table-bordered table-info">
                    <thead>
                        <tr>
                            <th>No</th>
                            <th>Nama</th>
                            <th>Jenis Kelamin</th>
                            <th>Alamat</th>
                        </tr>
                    </thead>
                    <tbody>
                        <?php
                        $no = 1;
                        foreach ($karyawan_where as $karyawan_where) :
                        ?>
                            <tr>
                                <td><?= $no++ ?></td>
                                <td><?= $karyawan_where->nama; ?></td>
                                <td><?= $karyawan_where->jenis_kelamin; ?></td>
                                <td><?= $karyawan_where->alamat; ?></td>
                            </tr>
                        <?php endforeach ?>
                    </tbody>
                </table>
            </div>
        </div>
        <div class="card">
            <div class="card-header">
                <h4>Data Karyawan WHERE IN "Jakarta , Bandung"</h4>
            </div>
            <div class="card-body">
                <table class="table table-sm table-bordered table-info">
                    <thead>
                        <tr>
                            <th>No</th>
                            <th>Nama</th>
                            <th>Jenis Kelamin</th>
                            <th>Alamat</th>
                        </tr>
                    </thead>
                    <tbody>
                        <?php
                        $no = 1;
                        foreach ($karyawan_where_in as $karyawan_where_in) :
                        ?>
                            <tr>
                                <td><?= $no++ ?></td>
                                <td><?= $karyawan_where_in->nama; ?></td>
                                <td><?= $karyawan_where_in->jenis_kelamin; ?></td>
                                <td><?= $karyawan_where_in->alamat; ?></td>
                            </tr>
                        <?php endforeach ?>
                    </tbody>
                </table>
            </div>
        </div>
    </div>
</body>
<script src="http://localhost/indonetsource/bootstrap/js/jquery-3.5.1.min.js"></script>
<script src="http://localhost/indonetsource/bootstrap/js/popper.min.js"></script>
<script src="http://localhost/indonetsource/bootstrap/js/bootstrap.min.js"></script>

</html>

jalankan program pada browser

akses : http://localhost/indonetsource/karyawan

Output Program menampikan semua data karyawan

data karyawan where alamat jakarta

Output Program Menampilkan data karyawan dengan where

data karyawan where alamat jakarta

Bagian terakhir Output Program Menampilkan data karyawan dengan where in

data karyawan where alamat in  jakarta,bandung

0 Comments

Leave a Reply

Avatar placeholder

Your email address will not be published. Required fields are marked *