Contoh ekspresi

Berlaku Untuk
Access untuk Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Artikel ini menyediakan banyak contoh ekspresi di Access. Ekspresi adalah kombinasi operator, konstanta, fungsi, bidang tabel, kontrol, dan properti matematika atau logika yang setelah dievaluasi menghasilkan satu nilai. Anda dapat menggunakan ekspresi di Access untuk menghitung nilai, memvalidasi data, dan mengatur nilai default.

Di artikel ini

Formulir dan laporan

Semua ekspresi formulir dan laporan

Operasi teks
Nilai dalam kontrol lainnya
Operasi tanggal
Header dan footer
Menghitung, menjumlahkan, dan menghitung rata-rata nilai
Kondisi dari dua nilai saja
Operasi aritmetika
Fungsi agregat SQL

Kueri dan filter

Semua ekspresi kueri dan filter

Operasi teks
Fungsi agregat SQL
Mencocokkan nilai teks
Mencocokkan pola data dengan Like
Memperbarui kueri
Operasi aritmetika
Menemukan data yang hilang
Mencocokkan kriteria tanggal
Mencocokkan baris dengan agregat SQL
Pernyataan SQL
Operasi tanggal
Bidang terhitung dengan subkueri
Bidang dengan data yang hilang
Mencocokkan bidang dengan subkueri

Tabel

Semua ekspresi tabel

Nilai default bidang Aturan validasi bidang

Makro

Semua ekspresi makro

Formulir dan laporan

Tabel di bagian ini menyediakan contoh ekspresi yang menghitung nilai dalam kontrol yang terletak pada formulir atau laporan. Untuk membuat kontrol terhitung, masukkan ekspresi dalam properti ControlSource kontrol, dan bukan dalam bidang tabel atau kueri.

Catatan Anda juga bisa menggunakan ekspresi dalam formulir atau laporan saat Anda Menyorot data dengan pemformatan bersyarat.

Operasi teks

Ekspresi dalam tabel berikut ini menggunakan & operator (ampersand) dan + (plus) untuk menggabungkan string teks, fungsi bawaan untuk memanipulasi string teks, atau mengoperasikan teks untuk membuat kontrol terhitung.

Ekspresi Hasil
="N/A" Menampilkan N/A.
=[FirstName] & " " & [LastName] Menampilkan nilai-nilai yang berada di dalam bidang tabel yang disebut NamaDepan dan NamaBelakang. Dalam contoh ini, & operator digunakan untuk menggabungkan bidang NamaDepan, karakter spasi (diapit dalam tanda kutip), dan bidang NamaBelakang.
=Left([ProductName], 1) Menggunakan fungsi Left untuk menampilkan karakter pertama dari nilai bidang atau kontrol yang bernama NamaProduk.
=Right([AssetCode], 2) Menggunakan fungsi Right untuk menampilkan 2 karakter terakhir nilai dalam bidang atau kontrol yang bernama KodeAset.
=Trim([Address]) Menggunakan fungsi Trim untuk menampilkan nilai kontrol Alamat, menghapus spasi di depan atau di belakang.
=IIf(IsNull([Region]), [City] & " " & [PostalCode], [City] & " " & [Region] & " " & [PostalCode]) Menggunakan fungsi IIf untuk menampilkan nilai kontrol Kota dan KodePos jika nilai dalam kontrol Kawasan null; jika tidak, menampilkan nilai kontrol Kota, Kawasan, dan KodePos, dipisahkan dengan spasi.
=[City] & (" " + [Region]) & " " & [PostalCode] Menggunakan operator + dan penyebaran null untuk menampilkan nilai kontrol Kota dan KodePos jika nilai dalam bidang atau kontrol Kawasan null; jika tidak, ini menampilkan nilai bidang atau kontrol Kota, Kawasan, dan KodePos, yang dipisahkan oleh spasi.
Penyebaran null berarti bahwa jika salah satu komponen ekspresi null, keseluruhan ekspresi juga null. Operator + mendukung penyebaran null; & operator tidak.

Atas Halaman

Header dan footer

Anda menggunakan properti Page dan Pages untuk menampilkan atau mencetak nomor halaman di formulir atau laporan. Properti Page dan Pages tersedia hanya selama pencetakan atau pratinjau cetak, sehingga tidak muncul di lembar properti untuk formulir atau laporan. Biasanya, Anda menggunakan properti ini dengan menempatkan kotak teks di bagian header atau footer formulir atau laporan, lalu menggunakan ekspresi, seperti yang diperlihatkan dalam tabel berikut ini.

Untuk informasi selengkapnya tentang menggunakan header dan footer dalam formulir dan laporan, lihat artikel Menyisipkan nomor halaman ke dalam formulir atau laporan.

Ekspresi Hasil
=[Page] 1
="Page " & [Page] Halaman 1
="Page " & [Page] & " of " & [Pages] Halaman 1 dari 3
=[Page] & " of " & [Pages] & " Pages" 1 dari 3 Halaman
=[Page] & "/" & [Pages] & " Pages" 1/3 Halaman
=[Country/region] & " - " & [Page] INGGRIS - 1
=Format([Page], "000") 001
="Printed on: " & Date() Dicetak pada: 31/12/17

Atas Halaman

Operasi aritmetika

Anda dapat menggunakan ekspresi untuk menambah, mengurangi, mengalikan, dan membagi nilai pada dua atau beberapa bidang atau kontrol. Anda juga dapat menggunakan ekspresi untuk melakukan operasi aritmetika pada tanggal. Misalnya, anggaplah Anda memiliki bidang tabel Tanggal/Waktu bernama TanggalDiperlukan. Dalam bidang, atau dalam kontrol yang terikat ke bidang, ekspresi =[RequiredDate] - 2 mengembalikan nilai tanggal/waktu sama dengan dua hari sebelum nilai saat ini dalam bidang TanggalDiperlukan.

Ekspresi Hasil
=[Subtotal]+[Freight] Jumlah nilai bidang atau kontrol Subtotal dan Pengangkutan.
=[RequiredDate]-[ShippedDate] Interval antara nilai-nilai tanggal dari bidang atau kontrol TanggalDiperlukan dan TanggalPengiriman.
=[Price]*1.06 Hasil kali nilai bidang atau kontrol Harga dan 1,06 (menambahkan 6 persen ke nilai Harga).
=[Quantity]*[Price] Hasil kali nilai bidang atau kontrol Kuantitas dan Harga.
=[EmployeeTotal]/[CountryRegionTotal] Hasil bagi nilai bidang atau kontrol TotalPegawai dan TotalKawasanNegara.

Catatan Saat Anda menggunakan operator aritmetika (+, -, , *dan /) dalam ekspresi, dan nilai salah satu kontrol dalam ekspresi adalah null, hasil dari seluruh ekspresi akan null — ini dikenal sebagai Penyebaran Null. Jika ada rekaman dalam salah satu kontrol yang Anda gunakan dalam ekspresi mungkin memiliki nilai null, Anda bisa menghindari penyebaran Null dengan mengonversi nilai null menjadi nol dengan menggunakan fungsi Nz — misalnya, =Nz([Subtotal])+Nz([Freight]).

Atas Halaman

Nilai dalam kontrol lainnya

Terkadang, Anda membutuhkan nilai yang ada di tempat lain, seperti dalam bidang atau kontrol di formulir atau laporan lain. Anda dapat menggunakan ekspresi untuk mengembalikan nilai dari bidang atau kontrol lain.

Tabel berikut mencantumkan contoh ekspresi yang dapat Anda gunakan dalam kontrol terhitung pada formulir.

Ekspresi Hasil
=Forms![Orders]![OrderID] Nilai kontrol IDPesanan di formulir Pesanan.
=Forms![Orders]![Orders Subform].Form![OrderSubtotal] Nilai kontrol SubtotalPesanan di subformulir bernama Subformulir Pesanan di formulir Pesanan.
=Forms![Orders]![Orders Subform]![ProductID].Column(2) Nilai dari kolom ketiga dalam IDProduk, kotak daftar beberapa kolom di subformulir bernama Subformulir Pesanan di formulir Pesanan. (Perhatikan bahwa 0 merujuk ke kolom pertama, 1 merujuk ke kolom kedua, dan seterusnya.)
=Forms![Orders]![Orders Subform]![Price] * 1.06 Produk dari nilai kontrol Harga di subformulir bernama Subformulir Pesanan di formulir Pesanan dan 1,06 (menambahkan 6 persen ke nilai kontrol Harga).
=Parent![OrderID] Nilai kontrol IDPesanan di formulir utama atau induk subformulir saat ini.

Ekspresi dalam tabel berikut ini memperlihatkan beberapa cara untuk menggunakan kontrol terhitung pada laporan. Ekspresi merujuk pada Properti Laporan.

Ekspresi Hasil
=Report![Invoice]![OrderID] Nilai kontrol disebut "IDPesanan" dalam laporan yang disebut "Faktur."
=Report![Summary]![Summary Subreport]![SalesTotal] Nilai kontrol TotalPenjualan pada sublaporan bernama Sublaporan Ringkasan pada laporan Ringkasan.
=Parent![OrderID] Nilai kontrol IDPesanan pada laporan utama atau induk laporan sublaporan saat ini.

Atas Halaman

Menghitung, menjumlahkan, dan menghitung rata-rata nilai

Anda dapat menggunakan tipe fungsi yang disebut fungsi agregat untuk menghitung nilai untuk satu atau beberapa bidang atau kontrol. Misalnya, Anda dapat menghitung total grup untuk footer grup dalam laporan, atau subtotal pesanan untuk item baris di formulir. Anda juga dapat menghitung jumlah item dalam satu atau beberapa bidang atau menghitung nilai rata-rata.

Ekspresi dalam tabel berikut ini memperlihatkan beberapa cara untuk menggunakan fungsi seperti Avg, Count, dan Sum.

Ekspresi Deskripsi
=Avg([Freight]) Menggunakan fungsi Avg untuk menampilkan rata-rata nilai bidang tabel atau kontrol yang bernama "Pengangkutan."
=Count([OrderID]) Menggunakan fungsi Count untuk menampilkan jumlah data dalam kontrol IDPesanan.
=Sum([Sales]) Menggunakan fungsi Sum untuk menampilkan jumlah nilai kontrol Penjualan.
=Sum([Quantity]*[Price]) Menggunakan fungsi Sum untuk menampilkan jumlah hasil kali dari nilai kontrol Kuantitas dan Harga.
=[Sales]/Sum([Sales])*100 Menampilkan persentase penjualan, ditentukan dengan membagi nilai kontrol Penjualan dengan jumlah semua nilai kontrol Penjualan.
Jika Anda mengatur properti Format kontrol ke Persen, jangan sertakan *100 dalam ekspresi.

Untuk informasi selengkapnya tentang menggunakan fungsi agregat dan menjumlahkan nilai dalam bidang dan kolom, lihat artikel Menjumlahkan data menggunakan kueri, Menghitung data menggunakan kueri, Menampilkan total kolom dalam lembar data menggunakan baris Total, dan Menampilkan total kolom dalam lembar data.

Atas Halaman

Fungsi agregat SQL

Anda menggunakan tipe fungsi yang disebut fungsi SQL atau agregat domain ketika perlu menjumlahkan atau menghitung nilai secara selektif. Sebuah "domain" terdiri dari satu atau beberapa bidang dalam satu atau beberapa tabel, atau satu atau beberapa kontrol di satu atau beberapa formulir atau laporan. Misalnya, Anda dapat menyesuaikan nilai dalam bidang tabel dengan nilai dalam kontrol di formulir.

Ekspresi Deskripsi
=DLookup("[ContactName]", "[Suppliers]", "[SupplierID] = " & Forms("Suppliers")("[SupplierID]")) Menggunakan fungsi DLookup untuk mendapatkan nilai bidang NamaKontak dalam tabel Pemasok ketika nilai bidang IDPemasok dalam tabel cocok dengan nilai kontrol IDPemasok di formulir Pemasok.
=DLookup("[ContactName]", "[Suppliers]", "[SupplierID] = " & Forms![New Suppliers]![SupplierID]) Menggunakan fungsi DLookup untuk mendapatkan nilai dari bidang NamaKontak dalam tabel Pemasok ketika nilai bidang IDPemasok dalam tabel cocok dengan nilai kontrol IDPemasok di formulir Pemasok Baru.
=DSum("[OrderAmount]", "[Orders]", "[CustomerID] = 'RATTC'") Menggunakan fungsi DSum untuk mendapatkan total jumlah nilai dalam bidang JumlahPesanan dalam tabel Pesanan ketika IDPelanggan adalah RATTC.
=DCount("[Retired]","[Assets]","[Retired]=Yes") Menggunakan fungsi DCount untuk mendapatkan jumlah nilai Ya di bidang Dihentikan (bidang Ya/Tidak) dalam tabel Aset.

Atas Halaman

Operasi tanggal

Melacak tanggal dan waktu merupakan aktivitas mendasar untuk database. Misalnya, Anda dapat menghitung hari yang telah berlalu sejak tanggal faktur untuk menghitung piutang dagang. Anda dapat memformat tanggal dan waktu dalam berbagai cara, seperti yang diperlihatkan dalam tabel berikut ini.

Ekspresi Deskripsi
=Date() Menggunakan fungsi Date untuk menampilkan tanggal saat ini dalam bentuk mm-dd-yy, di mana mm bulan (1 sampai 12), dd adalah hari (1 sampai 31), dan yy merupakan dua digit terakhir dalam setahun (1980 hingga 2099).
=Format(Now(), "ww") Menggunakan fungsi Format untuk menampilkan jumlah minggu dalam setahun untuk tanggal saat ini, di mana ww menunjukkan minggu 1 sampai 53.
=DatePart("yyyy", [OrderDate]) Menggunakan fungsi DatePart untuk menampilkan empat digit tahun dari nilai kontrol TanggalPesanan.
=DateAdd("y", -10, [PromisedDate]) Menggunakan fungsi DateAdd untuk menampilkan tanggal 10 hari sebelum nilai kontrol TanggalDijanjikan.
=DateDiff("d", [OrderDate], [ShippedDate]) Menggunakan fungsi DateDiff untuk menampilkan selisih hari antara nilai kontrol TanggalPemesanan dan TanggalPengiriman.
=[InvoiceDate] + 30 Menggunakan operasi aritmetika pada tanggal untuk menghitung tanggal 30 hari setelah tanggal dalam bidang atau kontrol TanggalFaktur.

Atas Halaman

Kondisi dari dua nilai saja

Contoh ekspresi dalam tabel berikut ini menggunakan fungsi IIf untuk mendapatkan satu dari dua nilai yang mungkin. Anda melewati fungsi IIf tiga argumen: Argumen pertama adalah ekspresi yang harus mengembalikan atau TrueFalse nilai. Argumen kedua adalah nilai yang akan diberikan jika ekspresi benar, dan argumen ketiga adalah nilai yang akan diberikan jika ekspresi salah.

Ekspresi Deskripsi
=IIf([Confirmed] = "Yes", "Order Confirmed", "Order Not Confirmed") Menggunakan fungsi IIf (Immediate If) untuk menampilkan pesan "Order Confirmed" jika nilai kontrol Dikonfirmasi adalah Yes; jika tidak, pesan akan menampilkan pesan "Order Not Confirmed."
=IIf(IsNull([Country/region]), " ", [Country]) Menggunakan fungsi IIf dan IsNull untuk menampilkan string kosong jika nilai kontrol Negara/kawasan null; jika tidak, menampilkan nilai kontrol Negara/kawasan.
=IIf(IsNull([Region]), [City] & " " & [PostalCode], [City] & " " & [Region] & " " & [PostalCode]) Menggunakan fungsi IIf dan IsNull untuk menampilkan nilai kontrol Kota dan KodePos jika nilai dalam kontrol Kawasan null; jika tidak, menampilkan nilai kontrol Kota, Kawasan, dan KodePos.
=IIf(IsNull([RequiredDate]) Or IsNull([ShippedDate]), "Check for a missing date", [RequiredDate] - [ShippedDate]) Menggunakan fungsi IIf dan IsNull untuk menampilkan pesan "Periksa tanggal yang hilang" jika hasil dari mengurangi TanggalPengiriman dari TanggalDiperlukan null; jika tidak, menampilkan interval antara nilai tanggal kontrol TanggalDiperlukan dan TanggalPengiriman.

Atas Halaman

Kueri dan filter

Bagian ini berisi contoh ekspresi yang dapat Anda gunakan untuk membuat bidang terhitung dalam kueri atau untuk memasukkan kriteria ke kueri. Bidang terhitung adalah kolom dalam kueri yang merupakan hasil dari ekspresi. Misalnya, Anda dapat menghitung nilai, memadukan nilai teks seperti nama depan dan belakang, atau memformat sebagian tanggal.

Anda menggunakan kriteria dalam kueri untuk membatasi data yang Anda kerjakan. Misalnya, Anda bisa menggunakan Between operator untuk memasukkan tanggal mulai dan berakhir dan membatasi hasil kueri Anda untuk pesanan yang dikirim di antara tanggal tersebut.

Di bawah ini tersedia contoh ekspresi untuk digunakan dalam kueri.

Operasi teks

Ekspresi dalam tabel berikut ini menggunakan & operator dan + untuk menggabungkan string teks, menggunakan fungsi bawaan untuk beroperasi pada string teks, atau beroperasi pada teks untuk membuat bidang terhitung.

Ekspresi Deskripsi
FullName: [FirstName] & " " & [LastName] Membuat bidang yang disebut NamaLengkap yang menampilkan nilai dalam bidang NamaDepan dan NamaBelakang, dipisahkan dengan spasi.
Address2: [City] & " " & [Region] & " " & [PostalCode] Membuat bidang yang disebut Alamat2, menampilkan nilai dalam bidang Kota, Kawasan, dan KodePos, dipisahkan dengan spasi.
ProductInitial: Left([ProductName], 1) Membuat bidang yang disebut InisialProduk, lalu menggunakan fungsi Left untuk menampilkan, dalam bidang InisialProduk, karakter pertama dari nilai dalam bidang NamaProduk.
TypeCode: Right([AssetCode], 2) Membuat bidang yang disebut KodeTipe, lalu menggunakan fungsi Right untuk menampilkan dua karakter terakhir nilai dalam bidang KodeAset.
AreaCode: Mid([Phone],2,3) Membuat bidang yang disebut KodeArea, lalu menggunakan fungsi Mid untuk menampilkan tiga karakter yang dimulai dengan karakter kedua dari nilai dalam bidang Telepon.
ExtendedPrice: CCur([Order Details].[Unit Price]*[Quantity]*(1-[Discount])/100)*100 Memberi nama HargaTotal pada bidang terhitung, lalu menggunakan fungsi CCur untuk menghitung total item baris dengan diskon yang diberikan.

Atas Halaman

Operasi aritmetika

Anda dapat menggunakan ekspresi untuk menambah, mengurangi, mengalikan, dan membagi nilai pada dua atau beberapa bidang atau kontrol. Anda juga dapat menggunakan operasi aritmetika pada tanggal. Misalnya, anggaplah Anda memiliki bidang Tanggal/Waktu bernama TanggalDiperlukan. Ekspresi =[RequiredDate] - 2 mengembalikan nilai Tanggal/Waktu sama dengan dua hari sebelum nilai dalam bidang TanggalDiperlukan.

Ekspresi Deskripsi
PrimeFreight: [Freight] * 1.1 Membuat bidang yang disebut PrimeFreight, lalu menampilkan biaya pengangkutan plus 10 persen dalam bidang.
OrderAmount: [Quantity] * [UnitPrice] Membuat bidang yang disebut JumlahPesanan, lalu menampilkan produk nilai dalam bidang Kuantitas dan HargaSatuan.
LeadTime: [RequiredDate] - [ShippedDate] Membuat bidang yang disebut WaktuTenggang, lalu menampilkan selisih antara nilai-nilai dalam bidang TanggalDiperlukan dan TanggalPengiriman.
TotalStock: [UnitsInStock]+[UnitsOnOrder] Membuat bidang yang disebut StokTotal, lalu menampilkan jumlah nilai dalam bidang UnitTersedia dan UnitSedangDipesan.
FreightPercentage: Sum([Freight])/Sum([Subtotal]) *100 Membuat bidang yang disebut PersentasePengangkutan, lalu menampilkan persentase biaya pengangkutan dalam setiap subtotal. Ekspresi ini menggunakan fungsi Sum untuk menjumlahkan nilai dalam bidang Pengangkutan, lalu membagi total tersebut dengan menjumlahkan nilai dalam bidang Subtotal.
Untuk menggunakan ekspresi ini, Anda harus mengonversi kueri pemilihan menjadi kueri Total karena Anda harus menggunakan baris Total dalam kisi desain, dan harus mengatur sel Total untuk bidang ini menjadi Ekspresi.
Untuk informasi selengkapnya tentang membuat kueri Total, lihat artikel Menjumlahkan data menggunakan kueri.
Jika Anda mengatur properti Format bidang ke Persen, jangan sertakan *100.

Untuk informasi selengkapnya tentang menggunakan fungsi agregat dan menjumlahkan nilai dalam bidang dan kolom, lihat artikel Menjumlahkan data menggunakan kueri, Menghitung data menggunakan kueri, Menampilkan total kolom dalam lembar data menggunakan baris Total, dan Menampilkan total kolom dalam lembar data.

Atas Halaman

Operasi tanggal

Hampir semua database menyimpan dan melacak waktu dan tanggal. Anda bekerja dengan tanggal dan waktu di Access dengan mengatur bidang tanggal dan waktu dalam tabel tipe Tanggal/Waktu. Access dapat melakukan perhitungan aritmetika pada tanggal; misalnya, menghitung berapa hari yang telah berlalu sejak tanggal faktur untuk menghitung piutang dagang.

Ekspresi Deskripsi
LagTime: DateDiff("d", [OrderDate], [ShippedDate]) Membuat bidang yang disebut WaktuTunda, lalu menggunakan fungsi DateDiff untuk menampilkan jumlah hari antara tanggal pesanan dan tanggal pengiriman.
YearHired: DatePart("yyyy",[HireDate]) Membuat bidang bernama TahunBekerja, lalu menggunakan fungsi DatePart untuk menampilkan tahun setiap karyawan dipekerjakan.
MinusThirty: Date( )- 30 Membuat bidang bernama MinusTigaPuluh, lalu menggunakan fungsi Date untuk menampilkan tanggal 30 hari sebelum tanggal saat ini.

Atas Halaman

Fungsi agregat SQL

Ekspresi dalam tabel berikut ini menggunakan fungsi SQL (Bahasa Kueri Terstruktur) yang mengagregasi atau merangkum data. Anda sering melihat fungsi ini (misalnya, Sum, Count, dan Avg) disebut sebagai fungsi agregat.

Selain fungsi agregat, Access juga menyediakan fungsi agregat "domain" yang Anda gunakan untuk menjumlahkan atau menghitung nilai secara selektif. Misalnya, Anda dapat menghitung hanya nilai dalam rentang tertentu atau mencari nilai dari tabel yang lain. Kumpulan fungsi agregat domain menyertakan Fungsi DSum, Fungsi DCount, dan Fungsi DAvg.

Untuk menghitung total, Anda seringkali perlu membuat kueri total. Misalnya, untuk meringkas menurut grup, Anda perlu menggunakan kueri Total. Untuk mengaktifkan kueri Total dari kisi desain kueri, klik Total di menu Tampilan.

Ekspresi Deskripsi
RowCount: Count(*) Membuat bidang yang disebut HitunganBaris, lalu menggunakan fungsi Count untuk menghitung jumlah catatan dalam kueri, termasuk catatan dengan bidang null (kosong).
FreightPercentage: Sum([Freight])/Sum([Subtotal]) *100 Membuat bidang yang disebut PersentasePengangkutan, lalu menghitung persentase biaya pengangkutan di setiap subtotal dengan membagi jumlah nilai dalam bidang Pengangkutan dengan menjumlahkan nilai dalam bidang Subtotal. (Contoh ini menggunakan fungsi Sum.)
Anda harus menggunakan ekspresi ini dengan kueri Total. Jika Anda mengatur properti Format bidang ke Persen, jangan sertakan *100.
Untuk informasi selengkapnya tentang membuat kueri Total, lihat artikel Menjumlahkan data menggunakan kueri.
AverageFreight: DAvg("[Freight]", "[Orders]") Membuat bidang yang disebut PengangkutanRata-Rata, lalu menggunakan fungsi DAvg untuk menghitung rata-rata pengangkutan pada semua pesanan yang digabungkan dalam kueri Total.

Atas Halaman

Bidang dengan data yang hilang

Ekspresi yang ditampilkan di sini berfungsi dengan bidang dengan informasi yang kemungkinan hilang, seperti nilai yang berisi null (tidak diketahui atau tidak terdefinisi). Anda seringkali menemukan nilai null, seperti harga yang tidak diketahui untuk produk yang baru atau nilai yang lupa ditambahkan seorang rekan pada pesanan. Kemampuan untuk menemukan dan memproses nilai null dapat menjadi bagian penting dari operasi database, dan ekspresi dalam tabel berikut menunjukkan beberapa cara yang umum digunakan untuk menangani nilai null.

Ekspresi Deskripsi
CurrentCountryRegion: IIf(IsNull([CountryRegion]), " ", [CountryRegion]) Membuat bidang yang disebut KawasanNegaraSaatIni, lalu menggunakan fungsi IIf dan IsNull untuk menampilkan string kosong dalam bidang itu bila bidang KawasanNegara berisi nilai null; jika tidak, menampilkan konten bidang KawasanNegara.
LeadTime: IIf(IsNull([RequiredDate] - [ShippedDate]), "Check for a missing date", [RequiredDate] - [ShippedDate]) Membuat bidang yang disebut WaktuTenggang, lalu menggunakan fungsi IIf dan IsNull untuk menampilkan pesan "Periksa tanggal yang hilang" jika nilai dalam bidang TanggalDiperlukan atau bidang TanggalPengiriman null; jika tidak, menampilkan selisih tanggal.
SixMonthSales: Nz([Qtr1Sales]) + Nz([Qtr2Sales]) Membuat bidang yang disebut PenjualanEnamBulan, lalu menampilkan jumlah total dari nilai dalam bidang Qtr1Sales dan Qtr2Sales menggunakan fungsi Nz untuk mengonversi setiap nilai null menjadi nol.

Atas Halaman

Bidang terhitung dengan subkueri

Anda dapat menggunakan kueri bertumpuk, juga disebut subkueri, untuk membuat bidang terhitung. Ekspresi dalam tabel berikut ini merupakan satu contoh dari bidang terhitung yang merupakan hasil dari subkueri.

Ekspresi Deskripsi
Cat: (SELECT [CategoryName] FROM [Categories] WHERE [Products].[CategoryID]=[Categories].[CategoryID]) Membuat bidang yang disebut Kat, lalu menampilkan NamaKategori, jika IDKategori dari tabel Kategori sama dengan IDKategori dari tabel Produk.

Atas Halaman

Mencocokkan nilai teks

Ekspresi contoh dalam tabel ini menunjukkan kriteria yang sesuai dengan keseluruhan atau sebagian nilai teks.

Bidang Ekspresi Deskripsi
KotaPengiriman "London" Menampilkan pesanan yang dikirim ke London.
KotaPengiriman "London" Or "Hedge End" Or Menggunakan operator untuk menampilkan pesanan yang dikirim ke London atau Hedge End.
KawasanNegaraPengiriman In("Canada", "UK") In Menggunakan operator untuk menampilkan pesanan yang dikirim ke Kanada atau Inggris.
KawasanNegaraPengiriman Not "USA" Not Menggunakan operator untuk menampilkan pesanan yang dikirim ke negara/kawasan selain AS.
NamaProduk Not Like "C*" Not Menggunakan operator dan * karakter wildcard untuk menampilkan produk yang namanya tidak dimulai dengan C.
NamaPerusahaan >="N" Menampilkan pesanan yang dikirim ke perusahaan yang namanya dimulai dengan huruf N melalui Z.
KodeProduk Right([ProductCode], 2)="99" Menggunakan fungsi Right untuk menampilkan pesanan dengan nilai ProductCode yang berakhiran 99.
NamaPengiriman Like "S*" Menampilkan pesanan yang dikirim ke pelanggan yang namanya dimulai dengan huruf S.

Atas Halaman

Mencocokkan kriteria tanggal

Ekspresi dalam tabel berikut ini menunjukkan penggunaan tanggal dan fungsi-fungsi yang terkait dalam ekspresi kriteria. Untuk informasi selengkapnya tentang memasukkan dan menggunakan nilai tanggal, lihat artikel Memformat bidang tanggal atau waktu.

Bidang Ekspresi Deskripsi
TanggalPengiriman #2/2/2017# Menampilkan pesanan yang dikirim pada tanggal 2 Februari 2017.
TanggalPengiriman Date() Menampilkan pesanan yang dikirim hari ini.
TanggalDiperlukan Between Date( ) And DateAdd("m", 3, Date( )) Between...And Menggunakan operator dan fungsi DateAdd dan Date untuk menampilkan pesanan yang diperlukan antara tanggal hari ini dan tiga bulan dari tanggal hari ini.
TanggalPesanan < Date( ) - 30 Menggunakan fungsi Date untuk menampilkan pesanan yang lebih dari 30 hari.
TanggalPesanan Year([OrderDate])=2017 Menggunakan fungsi Year untuk menampilkan pesanan dengan tanggal pesanan pada tahun 2017.
TanggalPesanan DatePart("q", [OrderDate])=4 Menggunakan fungsi DatePart untuk menampilkan pesanan untuk kuartal kalender keempat.
TanggalPesanan DateSerial(Year ([OrderDate]), Month([OrderDate])+1, 1)-1 Menggunakan fungsi DateSerial, Year, dan Month untuk menampilkan pesanan untuk hari terakhir setiap bulan.
TanggalPesanan Year([OrderDate])= Year(Now()) And Month([OrderDate])= Month(Now()) Menggunakan fungsi Year dan Month serta operator And untuk menampilkan pesanan untuk tahun dan bulan saat ini.
TanggalPengiriman Between #1/5/2017# And #1/10/2017# Between...AndMenggunakan operator untuk menampilkan pesanan yang dikirim tidak lebih awal dari 5-Jan-2017 dan tidak lebih lambat dari 10-Jan-2017.
TanggalDiperlukan Between Date( ) And DateAdd("M", 3, Date( )) Between...And Menggunakan operator untuk menampilkan pesanan yang diperlukan antara tanggal hari ini dan tiga bulan dari tanggal hari ini.
TanggalLahir Month([BirthDate])=Month(Date()) Menggunakan fungsi Month dan Date untuk menampilkan karyawan yang berulang tahun bulan ini.

Atas Halaman

Menemukan data yang hilang

Ekspresi dalam tabel berikut ini berfungsi dengan bidang yang memiliki informasi berpotensi hilang, yaitu bidang yang mungkin berisi nilai null atau string dengan panjang nol. Nilai null mewakili hilangnya informasi; tidak mewakili nilai nol atau nilai apa pun. Access mendukung gagasan hilangnya informasi ini karena konsepnya penting bagi integritas database. Di dunia nyata, informasi sering hilang, bahkan jika hanya untuk sementara waktu (misalnya, harga yang belum ditentukan untuk produk baru). Oleh karena itu, database yang merujuk entitas nyata, seperti bisnis, harus dapat merekam informasi yang hilang. Anda dapat menggunakan fungsi IsNull untuk menentukan apakah bidang atau kontrol berisi nilai null, dan juga dapat menggunakan fungsi Nz untuk mengonversi nilai null menjadi nol.

Bidang Ekspresi Deskripsi
KawasanPengiriman Is Null Menampilkan pesanan untuk pelanggan yang bidang KawasanPengirimannya null (hilang).
KawasanPengiriman Is Not Null Menampilkan pesanan untuk pelanggan yang bidang KawasanPengirimannya berisi nilai.
Faks "" Menampilkan pesanan untuk pelanggan yang tidak memiliki mesin faks, yang ditunjukkan dengan nilai string dengan pankang nol dalam bidang Faks dan bukan nilai null (hilang).

Atas Halaman

Mencocokkan pola data dengan Like

Like Operator memberikan banyak fleksibilitas saat Anda mencoba mencocokkan baris yang mengikuti pola, karena Anda bisa menggunakan Like dengan karakter wildcard dan menentukan pola agar Access cocok. Misalnya, * karakter wildcard (tanda bintang) cocok dengan urutan karakter tipe apa pun, dan memudahkan untuk menemukan semua nama yang dimulai dengan huruf. Misalnya, Anda menggunakan ekspresi Like "S*" untuk menemukan semua nama yang dimulai dengan huruf S. Untuk informasi selengkapnya, lihat artikel Operator Suka.

Bidang Ekspresi Deskripsi
NamaPengiriman Like "S*" Menemukan semua catatan dalam bidang NamaPengiriman yang dimulai dengan huruf S.
NamaPengiriman Like "*Imports" Menemukan semua catatan dalam bidang NamaPengiriman yang berakhir dengan kata “Imports”.
NamaPengiriman Like "[A-D]*" Menemukan semua catatan dalam bidang NamaPengiriman yang dimulai dengan huruf A, B, C, atau D.
NamaPengiriman Like "*ar*" Menemukan semua catatan dalam bidang NamaPengiriman yang menyertakan urutan huruf “ar”.
NamaPengiriman Like "Maison Dewe?" Menemukan semua catatan dalam bidang ShipName yang menyertakan "Maison" di bagian pertama nilai dan string lima huruf ketika keempat huruf pertama adalah "Dewe" dan huruf terakhir tidak diketahui.
NamaPengiriman Not Like "A*" Menemukan semua data dalam bidang NamaPengiriman yang tidak dimulai dengan huruf A.

Atas Halaman

Mencocokkan baris dengan agregat SQL

Anda menggunakan fungsi SQL atau agregat domain ketika perlu menjumlahkan, menghitung, atau merata-rata nilai secara selektif. Misalnya, Anda mungkin ingin menghitung hanya nilai-nilai yang berada dalam rentang tertentu, atau yang setelah dievaluasi menghasilkan Ya. Di lain waktu, Anda mungkin perlu mencari nilai dari tabel yang lain sehingga dapat menampilkannya. Ekspresi contoh dalam tabel berikut ini menggunakan fungsi-fungsi agregat domain untuk melakukan perhitungan pada satu rangkaian nilai, dan menggunakan hasilnya sebagai kriteria kueri.

Bidang Ekspresi Deskripsi
Pengangkutan > (DStDev("[Freight]", "Orders") + DAvg("[Freight]", "Orders")) Menggunakan fungsi DStDev dan DAvg untuk menampilkan semua pesanan yang biaya pengangkutannya meningkat melebihi rata-rata plus deviasi standar biaya pengangkutan.
Kuantitas > DAvg("[Quantity]", "[Order Details]") Menggunakan fungsi DAvg untuk menampilkan produk yang dipesan dalam kuantitas di atas kuantitas pesanan rata-rata.

Atas Halaman

Mencocokkan bidang dengan subkueri

Anda menggunakan subkueri, juga disebut kueri bertumpuk, untuk menghitung nilai untuk digunakan sebagai kriteria. Ekspresi contoh dalam tabel berikut ini cocok dengan baris berdasarkan hasil yang diberikan oleh subkueri.

Bidang Ekspresi Tampilan
HargaSatuan (SELECT [UnitPrice] FROM [Products] WHERE [ProductName] = "Aniseed Syrup") Produk yang harganya sama seperti harga Andiseed Syrup.
HargaSatuan >(SELECT AVG([UnitPrice]) FROM [Products]) Produk yang memiliki harga satuan di atas rata-rata.
Gaji > ALL (SELECT [Salary] FROM [Employees] WHERE ([Title] LIKE "*Manager*") OR ([Title] LIKE "*Vice President*")) Gaji setiap perwakilan penjualan yang gajinya lebih tinggi dari semua karyawan dengan jabatan “Manager” atau “Vice President”.
OrderTotal: [UnitPrice] * [Quantity] > (SELECT AVG([UnitPrice] * [Quantity]) FROM [Order Details]) Pesanan dengan total yang lebih tinggi daripada rata-rata nilai pesanan.

Atas Halaman

Memperbarui kueri

Anda menggunakan kueri pembaruan untuk mengubah data dalam satu atau beberapa bidang yang sudah ada dalam database. Misalnya, Anda dapat mengganti nilai atau menghapus seluruhnya. Tabel ini menunjukkan beberapa cara untuk menggunakan ekspresi dalam kueri pembaruan. Anda menggunakan ekspresi ini dalam baris Perbarui Menjadi dalam kisi desain kueri untuk bidang yang ingin diperbarui.

Untuk informasi selengkapnya tentang membuat kueri pembaruan, lihat artikel Membuat dan menjalankan kueri pembaruan.

Bidang Ekspresi Hasil
Judul "Salesperson" Mengubah nilai teks menjadi Salesperson.
MulaiProyek #8/10/17# Mengubah nilai tanggal menjadi 10-Ags-17.
Dihentikan Yes Mengubah nilai No dalam bidang Yes/No menjadi Yes.
NomorBagian "PN" & [PartNumber] Menambahkan PN ke awal tiap bagian angka yang ditentukan.
TotalItemBaris [UnitPrice] * [Quantity] Menghitung produk dari HargaSatuan dan Kuantitas.
Pengangkutan [Freight] * 1.5 Menambah biaya pengangkutan sebesar 50 persen.
Penjualan DSum("[Quantity] * [UnitPrice]", "Order Details", "[ProductID]=" & [ProductID]) Bila nilai IDProduk di tabel saat ini cocok dengan nilai IDProduk di tabel Detail Pesanan, memperbarui total penjualan berdasarkan hasil kali Kuantitas dan SatuanHarga.
KodePosPengiriman Right([ShipPostalCode], 5) Memotong karakter paling kiri, meninggalkan lima karakter paling kanan.
HargaSatuan Nz([UnitPrice]) Mengubah nilai null (tidak diketahui atau tidak terdefinisi) menjadi nilai nol (0) dalam bidang HargaSatuan.

Atas Halaman

Pernyataan SQL

Bahasa Kueri Terstruktur, atau SQL, merupakan bahasa kueri yang digunakan Access. Setiap kueri yang Anda buat dalam tampilan Desain kueri juga dapat dinyatakan menggunakan SQL. Untuk melihat pernyataan SQL untuk setiap kueri, klik Tampilan SQL di menu Tampilan. Tabel berikut ini menampilkan contoh pernyataan SQL yang menggunakan ekspresi.

Pernyataan SQL yang menggunakan ekspresi Hasil
SELECT [FirstName],[LastName] FROM [Employees] WHERE [LastName]="Danseglio"; Menampilkan nilai dalam bidang NamaDepan dan NamaBelakang untuk karyawan dengan nama belakang Danseglio.
SELECT [ProductID],[ProductName] FROM [Products] WHERE [CategoryID]=Forms![New Products]![CategoryID]; Menampilkan nilai dalam bidang IDProduk dan NamaProduk dalam tabel Produk untuk catatan ketika nilai IDKategori sesuai dengan nilai IDKategori yang disebutkan dalam formulir Produk Baru terbuka.
SELECT Avg([ExtendedPrice]) AS [Average Extended Price] FROM [Order Details Extended] WHERE [ExtendedPrice]>1000; Menghitung rata-rata harga diperpanjang untuk pesanan yang nilainya dalam bidang HargaDiperpanjang lebih dari 1.000, dan menampilkannya dalam bidang bernama Harga Diperpanjang Rata-Rata.
SELECT [CategoryID], Count([ProductID]) AS [CountOfProductID] FROM [Products] GROUP BY [CategoryID] HAVING Count([ProductID])>10; Dalam bidang bernama HitunganIDProduk, menampilkan jumlah total produk untuk kategori dengan lebih dari 10 produk.

Atas Halaman

Ekspresi tabel

Dua cara penggunaan ekspresi yang paling umum dalam tabel adalah dengan menetapkan nilai default dan membuat aturan validasi.

Nilai default bidang

Saat mendesain database, Anda mungkin ingin menetapkan nilai default untuk bidang atau kontrol. Access lalu memasukkan nilai default saat catatan baru yang berisi bidang dibuat atau ketika objek yang berisi kontrol tersebut dibuat. Ekspresi dalam tabel berikut menunjukkan sampel nilai default untuk bidang atau kontrol. Jika kontrol terikat ke bidang dalam tabel, dan bidang memiliki nilai default, nilai default kontrol diutamakan.

Bidang Ekspresi Nilai bidang default
Kuantitas 1 1
Kawasan "MT" MT
Kawasan "New York, N.Y." New York, N.Y. (Perhatikan bahwa Anda harus mengapit nilai dalam tanda kutip jika menyertakan tanda baca.)
Faks "" String dengan panjang nol untuk mengindikasikan bahwa, secara default, bidang ini harus kosong dan bukan berisi nilai null
Tanggal Pemesanan Date( ) Tanggal hari ini
BatasTanggal Date() + 60 Tanggal 60 hari ke depan dari sekarang

Atas Halaman

Aturan validasi bidang

Anda dapat membuat aturan validasi untuk bidang atau kontrol menggunakan ekspresi. Access lalu memberlakukan aturan tersebut saat data dimasukkan ke dalam bidang atau kontrol. Untuk membuat aturan validasi, ubah properti bidang atau kontrol ValidationRule. Anda juga harus mempertimbangkan mengatur properti ValidationText, yang berisi teks yang ditampilkan Access ketika peraturan validasi dilanggar. Jika Anda tidak mengatur properti ValidationText, Access menampilkan pesan kesalahan default.

Contoh-contoh dalam tabel berikut ini menunjukkan ekspresi aturan validasi untuk properti ValidationRule dan teks terkait untuk properti ValidationText.

Properti ValidationRule Properti ValidationText
<> 0 Masukkan nilai bukan nol.
0 Or > 100 Nilai harus 0 atau lebih besar dari 100.
Like "K???" Nilai harus empat karakter, dimulai dengan huruf K.
< #1/1/2017# Masukkan tanggal sebelum 1/1/2017.
>= #1/1/2017# And < #1/1/2008# Tanggal harus terjadi pada tahun 2017.

Untuk informasi selengkapnya tentang mengesahkan data, lihat artikel Membuat aturan pengesahan untuk mengesahkan data dalam bidang.

Atas Halaman

Ekspresi makro

Dalam beberapa kasus, Anda mungkin ingin melakukan tindakan atau serangkaian tindakan di makro hanya jika kondisi tertentu benar. Misalnya, anggaplah Anda ingin tindakan untuk dijalankan hanya ketika nilai kotak teks Counter adalah 10. Anda menggunakan ekspresi untuk menentukan kondisi dalam blok If:


[Counter]=10

Sama halnya dengan properti ValidationRule , ekspresi dalam blok If adalah ekspresi bersyarah. Ini harus diatasi dengan salah satu True atau False nilai. Tindakan terjadi hanya jika kondisi benar.

Gunakan ekspresi ini untuk menjalankan tindakan Jika
[City]="Paris" Paris adalah nilai Kota dalam bidang pada formulir yang menjadi tempat makro dijalankan.
DCount("[OrderID]", "Orders") > 35 Ada lebih dari 35 entri dalam bidang IDPesanan dari tabel Pesanan.
DCount("*", "[Order Details]", "[OrderID]=" & Forms![Orders]![OrderID]) > 3 Ada lebih dari tiga entri di dalam tabel Detail Pesanan ketika bidang IDPesanan tabel cocok dengan bidang IDOrder di formulir Pesanan.
[ShippedDate] Between #2-Feb-2017# And #2-Mar-2017# Nilai bidang TanggalPengiriman di formulir yang menjadi tempat makro dijalankan adalah setelah 2-Feb-2017 dan sebelum 2-Mar-2017.
Forms![Products]![UnitsInStock] < 5 Nilai bidang UnitTersedia pada formulir Produk adalah kurang dari 5.
IsNull([FirstName]) Nilai NamaDepan di formulir yang menjalankan makro null (tidak memiliki nilai). Ekspresi ini setara dengan [FirstName] Is Null.
[CountryRegion]="UK" And Forms![SalesTotals]![TotalOrds] > 100 Nilai dalam bidang KawasanNegara di formulir yang menjalankan makro adalah UK, dan nilai bidang TotalOrds di formulir TotalPenjualan lebih besar dari 100.
[CountryRegion] In ("France", "Italy", "Spain") And Len([PostalCode])<>5 Nilai dalam bidang KawasanNegara di formulir yang menjalankan makro adalah Prancis, Italia, atau Spanyol, dan kode pos tidak lebih dari 5 karakter.
MsgBox("Confirm changes?",1)=1 Klik OK dalam kotak dialog yang menampilkan fungsi MsgBox. Jika Anda mengklik Cancel dalam kotak dialog, Access mengabaikan tindakan.

Atas Halaman

Lihat Juga

Menggunakan Penyusun Ekspresi

Pengantar ekspresi

Mempelajari cara menyusun ekspresi

Panduan sintaks ekspresi