Rabu, 01 Juni 2016

MENGOLAH QUERY


Dengan query, kita dapat menggabungkan beberapa tabel ke dalam suatu query, mengurut data, menyaring (filter) data sesuai dengan kriteria yang diingin-kan, kita juga dapat menambahkan field dengan rumus (formula) baik perhitungan matematika maupun dengan menggunakan fungsi-fungsi dalam Microsoft Excel, seperti fungsi logika IF dan String.
Langkah pertama sebelum Mengolah Query adalah siapkan Query yang dimiliki. Misal Query awal yang dimiliki bernama JUAL QUERY, seperti dibawah ini :
Selanjutnya, perhatikan langkah-langkah berikut ini :
1.      Menambah Field dengan Rumus (Formula)
Di dalam query, kita dapat menambahkan field baru dengan rumus atau fungsi-fungsi untuk menghitung suatu nilai dalam database. Sebagai contoh, kita dapat menambahkan field baru TOTAL HARGA yaitu perkalian antara HARGA dikalikan UNIT. Maka pada jendela desain query, kita tambahkan field baru di kolom terakhir yaitu dengan mengetikkan rumus TOTAL HARGA : [HARGA]*[UNIT] seperti yang tampak di bawah ini :
                Jika ditampilkan, maka akan muncul hasilnya seperti berikut :
Catatan :
  •  Jika yang muncul hasilnya berupa simbol # pada field TOTAL HARGA, artinya lebar kolomnya tidak mencukupi, silakan Anda rubah lebar kolomnya.
2.      Fungsi Logika
Salah satu fungsi yang sering digunakan untuk memecahkan permasalahan yang menyangkut peristiwa-peristiwa logika yaitu dengan fungsi IIF. Sedangkan fungsi-fungsi yang lain dimanfaatkan untuk membantu mengoptimalkan kegunaan fungsi IIF ini.
Dengan operasi logika ini, Microsoft Access dapat melakukan penilaian apakah suatu pernyataan itu Benar (True) atau Salah (False).
a.      Ekspresi atau Pernyataan Logika
Jika kita menggunakan operasi logika, biasanya diperlukan adanya ekspresi atau pernyataan logika. Untuk menggunakan ekspresi atau pernyataan logika, diperlukan salah satu operator relasi (operator pembanding).
b.      Operator Relasi
Yang termasuk operator relasi yang sering digunakan di dalam pernyataan logika, diantaranya adalah sebagai berikut :
Operator Relasi
Artinya
=
Sama dengan
<
Lebih kecil
>
Lebih besar
<=
Lebih kecil atau sama dengan
>=
Lebih besar atau sama dengan
<>
Tidak sama dengan
c.       Fungsi Logika AND
Fungsi AND akan akan menghasilkan TRUE, apabila argumennya BENAR, dan akan menghasilkan FALSE jika salah satu atau beberapa argumennya SALAH.
Contoh Operator Logika AND :
DISCOUNT : IIf([NAMA MOTOR]="NINJA" And [UNIT]>=4;0,02)*[TOTAL HARGA]
d.      Fungsi Logika OR
Fungsi OR akan menghasilkan TRUE (atau menjalankan pilihan) bila hasilnya BENAR, sebaliknya akan menghasilkan FALSE (atau tidak menjalankan pilihan) bila hasilnya SALAH.
Contoh Operator Logika OR :
HARGA SATUAN : IIf([NAMA MOTOR]="NINJA" Or [NAMA MOTOR]="N-MAX";50000000,3)
Jika ditampilkan, maka akan muncul hasilnya seperti berikut :
Contoh Kasus :
Pembeli yang total pembayarannya lebih besar atau sama dengan Rp100.000.000 atau Mendapatkan bonus TV akan mendapatkan Kartu Member. (Berdasarkan pernyataan ini, pembeli yang total pembayarannya lebih besar atau sama dengan Rp100.000.000 meskipun tidak mendapatkan bonus TV akan mendapatkan Kartu Member. Begitu pula sebaliknya, pembeli yang mendapatkan bonus TV akan mendapatkan Kartu Member meskipun total pembayarannya tidak lebih besar atau sama dengan Rp100.000.000)
Sebelum memasukkan Rumus Fungsi Or, lengkapi query dengan field baru yang rumusnya adalah :
TOTAL BAYAR : [TOTAL HARGA]-([DISKON]+[DISKON TAMBAHAN])
Maka akan muncul field TOTAL BAYAR sebagai berikut :
Masukkan Rumus Fungsi Logika Or sebagai berikut :
KARTU MEMBER : IIf([TOTAL BAYAR]>=100000000 Or ([BONUS])="TV";"Mendapat Kartu Member";"Tidak Mendapat Kartu Member")
Jika ditampilkan, maka akan muncul hasilnya seperti berikut :
e.       Fungsi Logika IIF
Fungsi logika IIF yang sering digunakan di dalam pengambilan keputusan ada 2 (dua) fungsi, yaitu fungsi logika IIF Tunggal dan IIF Majemuk.
1.      Fungsi Logika IIF Tunggal
Fungsi logika IIF Tunggal digunakan untuk menyelesaikan suatu ekspresi logika yang mengandung beberapa perintah.
Bentuk umum penulisan Fungsi Logika IIF Tunggal
IIF(Ekspresi Logika, Perintah-1,Perintah-2)
Artinya jika ekspresi logika bernilai BENAR, maka Perintah-1 yang akan dilaksanakan. Namun jika ekspresi logika bernilai SALAH, maka Perintah-2 yang akan dilaksanakan.
Contoh Kasus Fungsi Logika IF Tunggal :
Tambahkan field BONUS, jika jumlah UNIT>=3, maka BONUS = TV, sedangkan jika jumlah UNIT<3, maka BONUS = DVD
Rumusnya adalah :
BONUS: IIf([UNIT]>=3;"TV";"DVD")
Penulisan pada jendela QBE seperti berikut :
Jika ditampilkan hasilnya seperti berikut :
2.      Fungsi Logika IIF Majemuk (IIF Nested)
Fungsi logika IIF Majemuk artinya di dalam fungsi logika IIF dimungkinkan untuk memasukkan fungsi logika IIF lagi. Hal ini bisa terjadi apabila alternatif pemecahan yang ditawarkan lebih dari dua.
Bentuk umum penulisan Fungsi Logika IIF Majemuk.
IIF(Ekspresi Logika-1, Perintah-1,IIF(Ekspresi Logika-2,Perintah-2, … …… ,IIF(Ekspresi Logika-n, Perintah-xn,yn)))
Contoh kasus Fungsi IIF Majemuk :
1.      5% jika TOTAL HARGA diatas 50.000.000
2.      50% jika TOTAL HARGA diatas 250.000.000
30% jika TOTAL HARGA diatas 200.000.000
10% jika TOTAL HARGA diatas 150.000.000
5% jika TOTAL HARGA diatas 70.000.000
Rumusnya adalah :
1.      DISKON : IIf([TOTAL HARGA]>=50000000;0,05)*[TOTAL HARGA]
2.      DISKON TAMBAHAN : IIf([TOTAL HARGA]>=250000000;0,5;IIf([TOTAL HARGA]>=200000000;0,3;IIf([TOTAL HARGA]>=150000000;0,1;IIf([TOTAL HARGA]>=70000000;0,05))))*[TOTAL HARGA]
Jika ditampilkan hasilnya seperti berikut :
3.      Fungsi String
Fungsi Teks (String) yang sering disebut sebagai fungsi karakter memuat fungsi-fungsi yang dapat digunakan untuk mengoperasikan data yang berjenis karakter. Teks dapat berupa huruf (alphabetic), angka (numeric), gabungan antara huruf dan angka (alphanumeric), serta karakter-karakter khusus.
Di dalam penulisan formula, setiap data yang berupa teks, harus diapit dengan tanda petik (“). Pada umumnya fungsi string/teks digunakan untuk melengkapi fungsi-fungsi lain seperti fungsi logika (kombinasi fungsi logika IIF dengan string). Yang sering digunakan pada Microsoft Access di antaranya yaitu fungsi Left, Right dan Mid.
Sebelum mengoperasikan Fungsi String, maka buatlah terlebih dahulu Query dengan nama FAKTUR sebagai berikut :
a.              Fungsi Left
Fungsi Left digunakan untuk mengambil sebagian data berjenis teks dari sebelah kiri sebanyak karakter yang diinginkan.
Bentuk umum penulisan Fungsi Left :
LEFT([Nama_Field],Jumlah karakter)
b.             Fungsi Right
Fungsi Right digunakan untuk mengambil sebagian data berjenis teks dari sebelah kanan sebanyak karakter yang diinginkan.
Bentuk umum penulisan Fungsi Right :
RIGHT([Nama_Field],Jumlah karakter)
c.         Fungsi Mid
Fungsi MID digunakan untuk mengambil sebagian data berjenis teks mulai dari kedudukan tertentu sebanyak karakter yang diinginkan. Microsoft Access
Bentuk umum penulisan Fungsi Mid :
MID([Nama_Field],Kedudukan_Mulai,Jumlah karakter)
Contoh Kasus :
Pengusaha Motor akan membuat NOMOR FAKTUR dengan ketentuan sebagai berikut :
   - Digit ke 1 menggunakan NO URUT
   - Digit ke 2-6 menggunakan 5 karakter awal dari PEMBELI
   - Digit ke 7-9 menggunakan karakter ke 3 sampai akhir dari NAMA MOTOR
   - Digit ke 10-12 menggunakan 3 karakter terakhir dari BUATAN
Langkah-langkah membuat NOMOR FAKTUR tersebut antara lain :
1.      Buat field baru pada jendela QEB menggunakan Query FAKTUR dengan memasukkan Fungsi Left :
KODE 1: Left([PEMBELI];5)
Jika ditampilkan hasilnya seperti berikut :
2.      Buat field baru lagi pada jendela QEB menggunakan Query FAKTUR dengan memasukkan Fungsi Mid :
KODE 2: Mid([NAMA MOTOR];3,3)
Jika ditampilkan hasilnya seperti berikut :
 Buat field baru lagi pada jendela QEB menggunakan Query FAKTUR dengan memasukkan Fungsi Right :
KODE 3: Right([BUATAN];3)
Jika ditampilkan hasilnya seperti berikut :
4.      Kemudian, untuk membuat field NOMOR FAKTUR yaitu gabungkan field NO URUT, KODE 1, KODE 2, dan KODE 3, masukkan Formula berikut pada jendela QEB :
NOMOR FAKTUR: [NO URUT] & ([KODE 1]+[KODE 2]+[KODE 3])
Jika ditampilkan hasilnya seperti berikut :
Catatan :
& berfungsi untuk menggabungkan dua field yang memiliki tipe data berbeda menjadi satu field.
4.      Kombinasi fungsi Logika IF dengan fungsi String (Left, Right, Mid)
Pemanfaatan fungsi String/Teks adalah fungsi Logika IF dan fungsi String. Artinya untuk memecahkan permasalahan diperlukan kombinasi atau gabungan antara fungsi logika IF dengan fungsi lainnya, misal fungsi string/teks.
Contoh kombinasi fungsi logika IF dengan Teks (LEFT, RIGHT, dan MID)
1.      Buatlah Query baru dengan nama MOTOR TERJUAL. Query ini hanya diisi dengan satu buah Field yaitu KODE.
2.      Tambahkan field-field baru dengan ketentuan sebagai berikut :
a.       Field DETAIL MOTOR pada kolom ke dua dengan ketentuan data diambil dari 1 karakter awal KODE, jika:
KODE = C, maka Detail Motor = CBR
KODE = M, maka Detail Motor = N-MAX
KODE = N, maka Detail Motor = NINJA
KODE = S, maka Detail Motor = SATRIA
b.      Field DETAIL BUATAN pada kolom ke tiga dengan ketentuan data diambil dari 2 karakter terakhir KODE, jika:
KODE = HO, maka Detail Buatan = HONDA
KODE = YM, maka Detail Buatan = YAMAHA
KODE = KW, maka Detail Buatan = KAWASAKI
KODE = SZ, maka Detail Buatan = SUZUKI
3.      Ketiklah rumus-rumus berikut pada jendela QEB :
Pertama rumus untuk field DETAIL MOTOR,
DETAIL MOTOR: IIf(Left([KODE];1)="C";"CBR";IIf(Left([KODE];1)="M";"N-MAX";IIf(Left([KODE];1)="N";"NINJA";IIf(Left([KODE];1)="S";"SATRIA"))))
Kedua, rumus untuk field DETAIL BUATAN,
DETAIL BUATAN: IIf(Right([KODE];2)="HO";"HONDA";IIf(Right([KODE];2)="YM";"YAMAHA";IIf(Right([KODE];2)="KW";"KAWASAKI";"SUZUKI")))
Jika ditampilkan hasilnya seperti berikut :
Itulah langkah-langkah dalam Mengolah Query, semoga bermanfaat :)