Dengan query, selain
dapat menggabungkan beberapa tabel ke dalam suatu query, mengurut data,
menyaring (filter) data sesuai dengan kriteria yang diinginkan, query juga
dapat menambahkan field dengan rumus (formula) baik perhitungan matematika
maupun dengan menggunakan fungsi-fungsi dalam Microsoft Excel, seperti fungsi
logika IF dan String.
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” dengan
“UNIT”.
Setelah
kita membuka jendela query, maka klik “Design View”. Kemudian kita tambahkan
field baru di kolom terakhir yaitu dengan mengetikkan rumus TOTAL HARGA : [HARGA]*[UNIT] seperti
yang tampak di bawah ini, kemudian klik “Run”.
Setelah
kita klik “Run” maka secara otomatis akan terdapat field baru pada data kita,
yaitu field “TOTAL HARGA”. Jika ditampilkan, maka akan muncul hasilnya seperti
berikut.
Kita dapat menambahkan field baru sesuai yang kita
inginkan. Misalnya kita akan menambah field “DISKON” sebesar 5%, maka tambahkan
field baru di kolom terakhir dengan mengetikkan rumus DISCOUNT : [0,05]*[TOTAL HARGA]. Kemudian klik “Run”.
Setelah
kita klik “Run” maka akan muncul perintah “Enter Parameter Value”, kemudian
ketikkan angka “0,05” lalu klik “OK”.
Secara
otomatis akan muncul field baru pada data kita, yaitu field “DISCOUNT”.
Tampilan akan tampak seperti di bawah ini.
Fungsi Logika
Tidak
dapat dipungkiri, di dalam dunia kerja sering kita jumpai permasalahan yang
tidak dapat diselesaikan hanya dengan menggunakan perumusan sederhana. Bahkan
sering terjadi suatu permasalahan dengan menawarkan beberapa alternatif
pemecahan, tergantung pada ketentuan yang berlaku untuk masing-masing
pemecahan. Permasalahan semacam ini di dalam Microsoft Access dapat
diselesaikan dengan menggunakan fungsi Logika.
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
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 menghasilkan TRUE apabila argumennya BENAR, dan akan menghasilkan FALSE jika salah satu atau beberapa
argumennya SALAH.
Contoh
Operator Logika AND:
DISCOUNT
VIXION ADVANCE : IIf([NAMA MOTOR]=”VIXION ADVANCE” And [UNIT]>=10;0,05;0)*[TOTAL
HARGA]
(ketikkan
rumus tersebut pada kolom terakhir)
Kemudian
klik “Run”, maka akan muncul perintah “Enter Parameter Value” kemudian ketik
angka “0,05” lalu klik “OK”.
Setelah
itu akan muncul field baru, yaitu “DISCOUNT VIXION ADVANCE”. Jika ditampilkan,
akan tampak seperti di bawah ini.
d.
Fungsi
Logika OR
Fungsi OR akan menghasilkan TRUE bila hasilnya BENAR,
sebaliknya akan menghasilkan FALSE
bila hasilnya SALAH.
Contoh Operator Logika OR:
HARGA
SATUAN : IIf([NAMA MOTOR]=”NINJA 250FI” Or [NAMA MOTOR]=”BMW G310R”;160000000;250000000)
(ketikkan
rumus tersebut pada kolom terakhir)
Kemudian
klik “Run”, maka akan muncul perintah “Enter Parameter Value” kemudian ketik
angka “0,05” lalu klik “OK”.
Setelah
itu akan muncul field baru, yaitu “HARGA SATUAN”. Jika ditampilkan, akan tampak
seperti di bawah ini.
e.
Fungsi
Logika IIF
Fungsi
Logika IIF Tunggal, digunakan untuk menyelesaikan suatu
ekspresi logika yang mengandung beberapa perintah.
Bentuk umum penulisan Fungsi Logika IIF Tunggal
adalah:
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 IIF Tunggal:
Tambahkan field
BONUS, jika jumlah UNIT>=13, maka BONUS = I-Phone 6S. Sedangkan jika
jumlah UNIT<13, maka BONUS = Samsung S7 Edge.
Rumusnya adalah:
BONUS : IIF([UNIT]>=13;”I-Phone
6S”;”Samsung S7 Edge”)
Atau rumusnya terbalik yang lebih kecil yang diuji
BONUS : IIF([UNIT]<13;”Samsung S7
Edge”;”I-Phone 6S”)
(ketikkan
rumus tersebut pada kolom terakhir)
Kemudian
klik “Run”, maka akan muncul perintah “Enter Parameter Value” kemudian ketik
angka “0,05” lalu klik “OK”.
Setelah
itu akan muncul field baru, yaitu “BONUS”. Jika ditampilkan, akan tampak seperti
di bawah ini.
Fungsi
Logika IIF Majemuk (IIF Nested), 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 adalah:
IIF(Ekspresi
Logika-1, Perintah-1,IIF(Ekspresi Logika-2, Perintah-2,....,IIF(Ekspresi
Logika-n, Perintah-xn,yn)))
Contoh kasus
Fungsi Logika IIF Majemuk:
Isilah kolom
DISCOUNT TOTAL dengan ketentuan sebagai berikut:
- Jika TOTAL HARGA >=1.000.000.000 (di
atas = 1 Milyar), maka DISCOUNT TOTAL = 20% dari TOTAL HARGA
- Jika TOTAL HARGA >=500.000.000 (di
atas = 500 Juta), maka DISCOUNT TOTAL = 15% dari TOTAL HARGA
- Jika TOTAL HARGA >=250.000.000 (di
atas = 250 Juta), maka DISCOUNT TOTAL = 10% dari TOTAL HARGA
- Jika TOTAL HARGA >=50.000.000 (di
atas = 50 Juta), maka DISCOUNT TOTAL = 5% dari TOTAL HARGA
- Jika TOTAL HARGA <50.000.000 (di
bawah 50 Juta), maka DISCOUNT TOTAL = 0% dari TOTAL HARGA
Rumusnya adalah:
DISCOUNT
TOTAL : IIf([TOTAL HARGA]>=1000000000;0,2;IIf([TOTAL
HARGA]>=500000000;0,15;IIf([TOTAL HARGA]>=250000000;0,1;IIf([TOTAL
HARGA]>=50000000;0,05;0))))*[TOTAL HARGA]
(ketikkan rumus
tersebut pada kolom terakhir)
Kemudian
klik “Run”, maka akan muncul perintah “Enter Parameter Value” kemudian ketik
angka “0,05” lalu klik “OK”.
Setelah
itu akan muncul field baru, yaitu “DISCOUNT TOTAL”. Jika ditampilkan, akan
tampak seperti di bawah ini.
Fungsi String
Fungsi
Teks (String) atau biasanya disebut
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).
a.
Fungsi
Left
Digunakan
untuk mengambil sebagian data berjenis teks dari sebelah kiri sebanyak karakter
yang diinginkan.
Bentuk
umum penulisan Fungsi Left adalah:
LEFT([Nama_Field],Jumlah
karakter)
Contoh
rumus Fungsi Left:
KODE
1 : LEFT([NAMA MOTOR];3)
(ketikkan
rumus tersebut pada kolom terakhir. Pada contoh kali ini kita menggunakan Query
baru, yaitu “QUERY PENJUALAN” )
Kemudian klik “Run”.
Setelah
itu akan muncul field baru, yaitu “KODE 1”. Jika ditampilkan, akan tampak
seperti di bawah ini.
b. Fungsi Right
Digunakan
untuk mengambil sebagian data berjenis teks dari sebelah kanan sebanyak
karakter yang diinginkan.
Bentuk
umum penulisan Fungsi Right adalah:
RIGHT([Nama_Field],Jumlah
karakter)
Contoh
rumus Fungsi Right:
KODE
2 : RIGHT([NAMA MOTOR];3)
(ketikkan
rumus tersebut pada kolom terakhir)
Kemudian klik “Run”.
Setelah
itu akan muncul field baru, yaitu “KODE 2”. Jika ditampilkan, akan tampak
seperti di bawah ini.
c.
Fungsi
Mid
Digunakan untuk mengambil sebagian data berjenis
teks mulai dari kedudukan tertentu sebanyak karakter yang diinginkan.
Bentuk umum penulisan Fungsi Mid adalah:
MID([Nama_Field],Kedudukan_Mulai,Jumlah
karakter)
Contoh rumus
Fungsi MID:
KODE
3 : MID([NAMA MOTOR];3;1)
(ketikkan
rumus tersebut pada kolom terakhir)
Kemudian klik “Run”.
Setelah
itu akan muncul field baru, yaitu “KODE 3”. Jika ditampilkan, akan tampak
seperti di bawah ini.
Kombinasi
Fungsi Logika IF dengan Fungsi 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)
Sebelumnya
buatlah tabel baru dengan nama “PENJUALAN
MOTOR” yang hanya berisi field “KODE
MOTOR”, setelah itu buatlah Query baru dengan nama “QUERY PENJUALAN MOTOR” dengan field “KODE MOTOR”.
Ketentuan:
1. Tambahkan
field NAMA MOTOR pada kolom kedua dengan
ketentuan, diambil karakter ke-1 dan
ke-2 dari KODE MOTOR, jika:
-
Kode Motor = 10, maka Nama Motor = CBR
150R
-
Kode Motor = 11, maka Nama Motor = VIXION
ADVANCE
-
Kode Motor = 12, maka Nama Motor = NINJA
250FI
-
Kode Motor = 13, maka Nama Motor =
SATRIA F150
-
Kode Motor = 14, maka Nama Motor = BMW
G310R
2. Tambahkan
field BUATAN pada kolom ketiga
dengan ketentuan, diambil dari karakter ke-3
dari KODE MOTOR, jika:
-
Kode Motor C, maka Buatan = HONDA
-
Kode Motor V, maka Buatan = YAMAHA
-
Kode Motor N, maka Buatan = KAWASAKI
-
Kode Motor S, maka Buatan = SUZUKI
-
Kode Motor B, maka Buatan = BMW
INDONESIA
3. Tambahkan
field DETAIL MOTOR pada kolom
keempat dengan ketentuan, diambil 1
karakter terakhir dari KODE MOTOR,
jika:
-
Kode Motor D, maka Detail Motor = Full
Injection Type 150
-
Kode Motor S, maka Detail Motor = Full
Injection Type Advance
-
Kode Motor A, maka Detail Motor = Full
Injection Type 250
-
Kode Motor J, maka Detail Motor = Injection
Type 150
-
Kode Motor N, maka Detail Motor = Full
Injection Type G310R
Rumusnya adalah sebagai berikut:
NAMA MOTOR
NAMA
MOTOR : IIf(Left([KODE MOTOR];2)="10";"CBR
150R";IIf(Left([KODE MOTOR];2)="11";"VIXION
ADVANCE";IIf(Left([KODE MOTOR];2)="12";"NINJA
250FI";IIf(Left([KODE MOTOR];2)="13";"SATRIA F150";IIf(Left([KODE
MOTOR];2)="14";"BMW G310R")))))
BUATAN
BUATAN
: IIf(Mid([KODE MOTOR];3;1)="C";"HONDA";IIf(Mid([KODE
MOTOR];3;1)="V";"YAMAHA";IIf(Mid([KODE
MOTOR];3;1)="N";"KAWASAKI";IIf(Mid([KODE
MOTOR];3;1)="S";"SUZUKI";IIf(Mid([KODE MOTOR];3;1)="B";"BMW
INDONESIA")))))
DETAIL MOTOR
DETAIL
MOTOR : IIf(Right([KODE MOTOR];1)="D";"Full Injection Type
150";IIf(Right([KODE MOTOR];1)="S";"Full Injection Type
Advance";IIf(Right([KODE MOTOR];1)="A";"Full Injection Type
250";IIf(Right([KODE MOTOR];1)="J";"Injection Type
150";IIf(Right([KODE MOTOR];1)="N";"Full Injection Type
G310R")))))
Menghitung Total dalam Query
Salah satu kelebihan
Access adalah pada objek query kita dapat menghitung Total (Sum, Avg, Max, Min
dan lain sebagainya).
Berikut adalah
langkah-langkahnya:
1. Tampilan
harus dalam keadaan Datasheet View.
2. Pada
group Records, klik “Totals” hingga muncul baris baru di bawah data bernama
“Total”.
3. Misalnya
kita memilih field HARGA untuk dijumlahkan.
4. Pada
tombol pilihan akan muncul fungsi yang ingin kita hitung, misalnya SUM.
Maka
secara otomatis field HARGA akan
dijumlahkan. Untuk menjumlahkan field-field yang lainnya, klik tombol pilihan
lalu pilih fungsi SUM.
Membuat Kriteria pada Kalkulasi Total
Kita dapat membuat
Kalkulasi Total sesuai dengan kriteria yang diinginkan, dengan syarat Totalnya
masih aktif.
Contoh:
Jumlahkan semua kendaraan yang mempunyai NAMA MOTOR CBR 150R atau VIXION ADVANCE.
Langkah-langkahnya adalah sebagai berikut:
1. Tampilan
harus dalam keadaan Design View.
2. Pada
baris Criteria, kolom field NAMA
MOTOR ketikkan CBR 150R.
Sedangkan pada baris Or, kolom NAMA MOTOR ketikkan VIXION
ADVANCE.
3. Jika
ditampilkan, maka hasilnya akan tampak seperti di bawah ini:
Semoga Bermanfaat :)