Mencari Tarikh Maksimum dalam Microsoft Access dengan IIF() dan Switch()
Microsoft Access tidak menyokong ungkapan CASE secara langsung. Walau bagaimanapun, kami boleh mencapai kefungsian yang sama untuk menentukan tarikh maksimum menggunakan fungsi IIF()
dan Switch()
.
Fungsi IIF()
Fungsi IIF()
ialah pernyataan bersyarat yang mengembalikan satu nilai jika syarat adalah benar, dan satu lagi jika ia palsu. Strukturnya ialah:
<code class="language-sql">IIF(condition, true_value, false_value)</code>
Contoh: Untuk mencari tarikh maksimum antara dua medan, LASTSERVICEDATE
dan [Last CP12 Date]
:
<code class="language-sql">IIF(dbo_tbl_property.LASTSERVICEDATE > Contour_dates.[Last CP12 Date], dbo_tbl_property.LASTSERVICEDATE, Contour_dates.[Last CP12 Date]) AS MaxDate</code>
Pertanyaan ini mengembalikan LASTSERVICEDATE
jika lebih besar daripada [Last CP12 Date]
; jika tidak, ia kembali [Last CP12 Date]
.
Fungsi Suis()
Fungsi Switch()
menyediakan cara yang lebih ringkas untuk mengendalikan berbilang keadaan. Sintaksnya ialah:
<code class="language-sql">Switch(expr1, value1, expr2, value2, ..., exprN, valueN)</code>
Fungsi menilai ungkapan secara berurutan. Jika ungkapan bernilai benar, nilai yang sepadan dikembalikan.
Contoh: Menggunakan Switch()
untuk mencari tarikh maksimum:
<code class="language-sql">Switch(dbo_tbl_property.LASTSERVICEDATE > Contour_dates.[Last CP12 Date], dbo_tbl_property.LASTSERVICEDATE, TRUE, Contour_dates.[Last CP12 Date]) AS MaxDate</code>
Ini mencapai hasil yang sama seperti contoh IIF()
. Ambil perhatian bahawa Switch()
menilai semua ungkapan, walaupun selepas keadaan sebenar ditemui. Berhati-hati dengan kemungkinan ralat seperti pembahagian dengan sifar yang mungkin timbul daripada tingkah laku ini.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Cari Tarikh Maksimum dalam Akses Menggunakan Fungsi IIF() dan Suis?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!