ตัวอย่างนิพจน์

บทความนี้มีตัวอย่างนิพจน์มากมายใน Access นิพจน์คือการผสมผสานตัวดำเนินการทางคณิตศาสตร์หรือทางตรรกศาสตร์ ค่าคงที่ ฟังก์ชัน เขตข้อมูลตาราง ตัวควบคุม และคุณสมบัติที่ประเมินเป็นค่าเดียวกัน คุณสามารถใช้นิพจน์ใน Access เพื่อคำนวณค่าต่างๆ ตรวจสอบความถูกต้องของข้อมูล และตั้งค่าเริ่มต้น

ในบทความนี้

แบบฟอร์มและรายงาน

ตารางในส่วนนี้มีตัวอย่างของนิพจน์ที่คำนวณค่าในตัวควบคุมที่อยู่ในแบบฟอร์มหรือรายงาน เมื่อต้องการสร้างตัวควบคุมที่ผ่านการคำนวณ ให้คุณใส่นิพจน์ในคุณสมบัติ แหล่งข้อมูลตัวควบคุม ของตัวควบคุม แทนที่จะใส่ในเขตข้อมูลตารางหรือคิวรี

หมายเหตุ    คุณยังสามารถใช้นิพจน์ในแบบฟอร์มหรือรายงานได้ เมื่อคุณเน้นข้อมูลด้วยการจัดรูปแบบตามเงื่อนไข

การดำเนินการข้อความ

นิพจน์ในตารางต่อไปนี้จะใช้ตัวดำเนินการ & (และ) และ + (บวก) ในการรวมสตริงข้อความ ฟังก์ชันที่มีอยู่ภายในเพื่อจัดการสตริงข้อความ หรือดำเนินการบนข้อความเพื่อสร้างตัวควบคุมที่ผ่านการคำนวณ

นิพจน์

ผลลัพธ์

="N/A"

แสดง N/A

=[FirstName] & " " & [LastName]

แสดงค่าที่อยู่ในเขตข้อมูลตารางที่เรียกว่า FirstName และ LastName ในตัวอย่างนี้ ตัวดำเนินการ & จะใช้ในการรวมเขตข้อมูล FirstName อักขระช่องว่าง (อยู่ในเครื่องหมายอัญประกาศ) และเขตข้อมูล LastName

=Left([ProductName], 1)

ใช้ฟังก์ชัน Left เพื่อแสดงอักขระแรกของค่าของเขตข้อมูลหรือตัวควบคุมที่เรียกว่าชื่อ ProductName

=Right([AssetCode], 2)

ใช้ฟังก์ชัน Right เพื่อแสดงอักขระ 2 ตัวสุดท้ายของค่าในเขตข้อมูลหรือตัวควบคุมที่เรียกว่า AssetCode

=Trim([Address])

ใช้ฟังก์ชัน Trim เพื่อแสดงค่าของตัวควบคุมที่อยู่ โดยนำช่องว่างนำหน้าหรือต่อท้ายออก

=IIf(IsNull([Region]), [City] & " " & [PostalCode], [City] & " " & [Region] & " " & [PostalCode])

ใช้ฟังก์ชัน IIf เพื่อแสดงค่าของตัวควบคุมเมืองและ PostalCode ถ้าค่าในตัวควบคุมภูมิภาคเป็น null มิฉะนั้น จะแสดงค่าของตัวควบคุมเมือง ภูมิภาค และ PostalCode ซึ่งคั่นโดยช่องว่าง

=[City] & (" " + [Region]) & " " & [PostalCode]

ใช้ตัวดำเนินการ + และการเผยแพร่ค่า null เพื่อแสดงค่าของตัวควบคุมเมืองและ PostalCode ถ้าค่าในเขตข้อมูลหรือตัวควบคุมภูมิภาคเป็น null มิฉะนั้น จะแสดงค่าของเขตข้อมูลหรือตัวควบคุมเมือง ภูมิภาค และ PostalCode ซึ่งคั่นโดยช่องว่าง

การเผยแพร่ที่ค่า Null หมายความว่าถ้าองค์ประกอบของนิพจน์มีค่า null ทั้งนิพจน์จะมีค่าเป็น null ด้วยเช่นกัน ตัวดำเนินการ + สนับสนุนการเผยแพร่ค่า null แต่ตัวดำเนินการ & จะไม่สนับสนุน

ด้านบนของหน้า

ส่วนหัวและส่วนท้าย

คุณใช้คุณสมบัติ Page และ Pages เพื่อแสดงหรือพิมพ์หมายเลขหน้าในแบบฟอร์มหรือรายงาน คุณสมบัติ Page และ Pages จะพร้อมใช้งานระหว่างการพิมพ์หรือแสดงตัวอย่างก่อนพิมพ์เท่านั้น ดังนั้นคุณสมบัติเหล่านี้จะไม่ปรากฎบนแผ่นคุณสมบัติสำหรับแบบฟอร์มหรือรายงาน โดยทั่วไปแล้ว คุณจะใช้คุณสมบัติเหล่านี้โดยการวางกล่องข้อความในส่วนหัวและส่วนท้ายของแบบฟอร์มหรือรายงาน แล้วใช้นิพจน์ เช่น นิพจน์ที่แสดงในตารางต่อไปนี้

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการใช้ส่วนหัวและส่วนท้ายในแบบฟอร์มและรายงาน ให้ดูบทความ แทรกหมายเลขหน้าลงในแบบฟอร์มหรือรายงาน

นิพจน์

ผลลัพธ์

=[Page]

1

="Page " & [Page]

หน้า 1

="Page " & [Page] & " of " & [Pages]

หน้า 1 จาก 3

=[Page] & " of " & [Pages] & " Pages"

1 จาก 3 หน้า

=[Page] & "/" & [Pages] & " Pages"

1/3 หน้า

=[Country/region] & " - " & [Page]

สหราชอาณาจักร - 1

=Format([Page], "000")

001

="Printed on: " & Date()

พิมพ์เมื่อ: 31/12/17

ด้านบนของหน้า

การดำเนินการคำนวณ

คุณสามารถใช้นิพจน์เพื่อบวก ลบ คูณ และหารค่าในเขตข้อมูลหรือตัวควบคุมอย่างน้อยสองตัวได้ คุณยังสามารถใช้นิพจน์เพื่อดำเนินการทางคณิตศาสตร์กับวันที่ ตัวอย่างเช่น สมมติว่าคุณมีเขตข้อมูลตารางวันที่/เวลาที่ชื่อว่า RequiredDate ในเขตข้อมูล หรือตัวควบคุมที่เชื่อมโยงกับเขตข้อมูล นิพจน์ =[RequiredDate] - 2 จะส่งกลับค่าวันที่/เวลาที่เท่ากับสองวันก่อนหน้าของค่าปัจจุบันในเขตข้อมูล RequiredDate

นิพจน์

ผลลัพธ์

=[Subtotal]+[Freight]

ผลรวมของค่าในเขตข้อมูลหรือตัวควบคุมผลรวมย่อยและค่าขนส่งสินค้า

=[RequiredDate]-[ShippedDate]

ช่วงระหว่างค่าวันที่ของเขตข้อมูลหรือตัวควบคุม RequiredDate และ ShippedDate

=[Price]*1.06

ผลคูณของค่าของเขตข้อมูลหรือตัวควบคุมราคา และ 1.06 (เพิ่ม 6 เปอร์เซ็นต์ให้กับค่าราคา)

=[Quantity]*[Price]

ผลคูณของค่าของเขตข้อมูลหรือตัวควบคุม ปริมาณ และ ราคา

=[EmployeeTotal]/[CountryRegionTotal]

ผลหารของค่าของเขตข้อมูลหรือตัวควบคุม EmployeeTotal และ CountryRegionTotal

หมายเหตุ    เมื่อคุณใช้ตัวดำเนินการคำนวณ (+, -, * และ /) ในนิพจน์ และค่าของหนึ่งในตัวควบคุมในนิพจน์เป็น null ผลลัพธ์ของนิพจน์ทั้งหมดจะเป็น null ซึ่งเรียกว่าการเผยแพร่ค่า Null ถ้าระเบียนในหนึ่งในตัวควบคุมที่คุณใช้ในนิพจน์อาจมีค่า null คุณสามารถหลีกเลี่ยงการเผยแพร่ค่า null ได้โดยการแปลงค่า Null เป็นศูนย์โดยใช้ฟังก์ชัน Nz — ตัวอย่างเช่น =Nz([Subtotal])+Nz([Freight])

ด้านบนของหน้า

ค่าในตัวควบคุมอื่น

บางครั้ง คุณต้องใช้ค่าที่มีอยู่ที่อื่น เช่น ในเขตข้อมูลหรือตัวควบคุมบนแบบฟอร์มหรือรายงานอื่น คุณสามารถใช้นิพจน์เพื่อส่งกลับค่าจากเขตข้อมูลหรือตัวควบคุมอื่น

ตารางต่อไปนี้แสดงรายการตัวอย่างของนิพจน์ที่คุณสามารถใช้ในตัวควบคุมที่ผ่านการคำนวณบนแบบฟอร์ม

นิพจน์

ผลลัพธ์

=Forms![Orders]![OrderID]

ค่าของตัวควบคุม OrderID บนแบบฟอร์มการสั่งซื้อ

=Forms![Orders]![Orders Subform].Form![OrderSubtotal]

ค่าของตัวควบคุม OrderSubtotal บนแบบฟอร์มย่อยที่ชื่อ ผลรวมย่อยการสั่งซื้อ บนแบบฟอร์มการสั่งซื้อ

=Forms![Orders]![Orders Subform]![ProductID].Column(2)

ค่าของคอลัมน์ที่สามใน ProductID กล่องรายการแบบหลายคอลัมน์บนแบบฟอร์มย่อยที่ชื่อ แบบฟอร์มย่อยการสั่งซื้อ บนแบบฟอร์ม การสั่งซื้อ (โปรดสังเกตว่า 0 หมายถึงคอลัมน์แรก 1 หมายถึงสองคอลัมน์ที่สอง และต่อๆ ไป)

=Forms![Orders]![Orders Subform]![Price] * 1.06

ผลคูณของค่าของตัวควบคุม ราคา บนแบบฟอร์มย่อยที่ชื่อ แบบฟอร์มย่อยการสั่งซื้อ บนแบบฟอร์ม การสั่งซื้อ และ 1.06 (เพิ่ม 6 เปอร์เซ็นต์ 6 ให้กับค่าของตัวควบคุม ราคา)

=Parent![OrderID]

ค่าของตัวควบคุม OrderID บนหน้าหลักหรือแบบฟอร์มแม่ของแบบฟอร์มย่อยปัจจุบัน

นิพจน์ในตารางต่อไปนี้แสดงวิธีใช้ตัวควบคุมที่ผ่านการคำนวณบนรายงาน นิพจน์อ้างอิง คุณสมบัติรายงาน

นิพจน์

ผลลัพธ์

=Report![Invoice]![OrderID]

ค่าของตัวควบคุมที่เรียกว่า "OrderID" ในรายงานที่เรียกว่า "ใบแจ้งหนี้"

=Report![Summary]![Summary Subreport]![SalesTotal]

ค่าของตัวควบคุม SalesTotal บนรายงานย่อยที่ชื่อ รายงานย่อยสรุป บนรายงาน สรุป

=Parent![OrderID]

ค่าของตัวควบคุม OrderID บนหน้าหลักหรือรายงานแม่ของรายงานย่อยปัจจุบัน

ด้านบนของหน้า

นับ รวม และหาค่าเฉลี่ย

คุณสามารถใช้ชนิดของฟังก์ชันที่เรียกว่าฟังก์ชันการรวมเพื่อคำนวณค่าของเขตข้อมูลหรือตัวควบคุมอย่างน้อยหนึ่งตัว ตัวอย่างเช่น คุณสามารถคำนวณกลุ่มผลรวมสำหรับส่วนท้ายของกลุ่มในรายงาน หรือผลรวมย่อยคำสั่งซื้อสำหรับรายการบนแบบฟอร์ม นอกจากนี้ คุณยังสามารถนับจำนวนรายการในอย่างน้อยหนึ่งเขตข้อมูลหรือคำนวณค่าเฉลี่ย

นิพจน์ในตารางต่อไปนี้แสดงวิธีการใช้ฟังก์ชัน เช่น Avg, Count และ Sum

นิพจน์

คำอธิบาย

=Avg([Freight])

ใช้ฟังก์ชัน Avg เพื่อแสดงค่าเฉลี่ยของค่าของเขตข้อมูลตารางหรือตัวควบคุมที่ชื่อ "ค่าขนส่งสินค้า"

=Count([OrderID])

ใช้ฟังก์ชัน Count เพื่อแสดงจำนวนระเบียนในตัวควบคุม OrderID

=Sum([Sales])

ใช้ฟังก์ชัน Sum เพื่อแสดงผลรวมของค่าของตัวควบคุม ยอดขาย

=Sum([Quantity]*[Price])

ใช้ฟังก์ชัน Sum เพื่อแสดงผลรวมของผลคูณของค่าของตัวควบคุม ปริมาณ และ ราคา

=[Sales]/Sum([Sales])*100

แสดงเปอร์เซ็นต์ของยอดขาย ที่มาจากการหารค่าของตัวควบคุม ยอดขาย โดยผลรวมของค่าทั้งหมดของตัวควบคุม ยอดขาย

ถ้าคุณตั้งค่าคุณสมบัติ Format ของตัวควบคุมเป็น Percent ไม่ต้องใส่ *100 ในนิพจน์

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการใช้ฟังก์ชันการรวมและการรวมค่าในเขตข้อมูลและคอลัมน์ ให้ดูบทความ รวมข้อมูลโดยใช้คิวรีนับข้อมูลโดยใช้คิวรีแสดงผลรวมคอลัมน์ในแผ่นข้อมูลโดยใช้แถวผลรวม และ แสดงผลรวมคอลัมน์ในแผ่นข้อมูล

ด้านบนของหน้า

ฟังก์ชันการรวมของ SQL

คุณสามารถใช้ชนิดฟังก์ชันที่เรียกว่าฟังก์ชันการรวม SQL หรือโดเมนเมื่อคุณต้องการรวมหรือนับค่าตามที่เลือก "โดเมน" มีอย่างน้อยหนึ่งเขตข้อมูลในตารางอย่างน้อยหนึ่งตาราง หรืออย่างน้อยหนึ่งตัวควบคุมบนแบบฟอร์มหรือรายงานอย่างน้อยหนึ่งรายการ ตัวอย่างเช่น คุณสามารถจับคู่ค่าในเขตข้อมูลตารางที่มีค่าในตัวควบคุมบนแบบฟอร์ม

นิพจน์

คำอธิบาย

=DLookup("[ContactName]", "[Suppliers]", "[SupplierID] = " & Forms("Suppliers")("[SupplierID]"))

ใช้ฟังก์ชัน DLookup เพื่อส่งกลับค่าของเขตข้อมูล ContactName ในตาราง ผู้จำหน่าย ที่ค่าของเขตข้อมูล SupplierID ในตารางตรงกับค่าของตัวควบคุม SupplierID บนแบบฟอร์ม ผู้จำหน่าย

=DLookup("[ContactName]", "[Suppliers]", "[SupplierID] = " & Forms![New Suppliers]![SupplierID])

ใช้ฟังก์ชัน DLookup เพื่อส่งกลับค่าของเขตข้อมูล ContactName ในตาราง ผู้จำหน่าย ที่ค่าของเขตข้อมูล SupplierID ในตารางตรงกับค่าของตัวควบคุม SupplierID บนแบบฟอร์ม ผู้จำหน่ายใหม่

=DSum("[OrderAmount]", "[Orders]", "[CustomerID] = 'RATTC'")

ใช้ฟังก์ชัน DSum เพื่อส่งกลับผลรวมของค่าในเขตข้อมูล OrderAmount ในตาราง การสั่งซื้อ ที่ CustomerID เป็น RATTC

=DCount("[Retired]","[Assets]","[Retired]=Yes")

ใช้ฟังก์ชัน DCount เพื่อส่งกลับจำนวนของค่า ใช่ ในเขตข้อมูล เกษียณ (เขตข้อมูล ใช่/ไม่ใช่) ในตาราง ทรัพย์สิน

ด้านบนของหน้า

การดำเนินการวันที่

การติดตามวันที่และเวลาเป็นกิจกรรมฐานข้อมูลพื้นฐาน ตัวอย่างเช่น คุณสามารถคำนวณจำนวนวันที่ผ่านไปตั้งแต่วันที่ในใบแจ้งหนี้เพื่อคำนวณระยะเวลาบัญชีรายรับของคุณ คุณสามารถจัดรูปแบบวันที่และเวลาได้หลายวิธี ตามที่แสดงในตารางต่อไปนี้

นิพจน์

คำอธิบาย

=Date()

ใช้ฟังก์ชัน Date เพื่อแสดงวันที่ปัจจุบันในรูปแบบ mm-dd-yy ซึ่ง mm คือเดือน (1 ถึง 12) dd คือวัน (1 ถึง 31) และ yy คือเลขสองหลักสุดท้ายของปี (1980 ถึง 2099)

=Format(Now(), "ww")

ใช้ฟังก์ชัน Format เพื่อแสดงจำนวนสัปดาห์ในปีของวันที่ปัจจุบัน โดย ww แสดงสัปดาห์ที่ 1 ถึง 53

=DatePart("yyyy", [OrderDate])

ใช้ฟังก์ชัน DatePart เพื่อแสดงเลขสี่หลักของปีของค่าตัวควบคุม OrderDate

=DateAdd("y", -10, [PromisedDate])

ใช้ฟังก์ชัน DateAdd เพื่อแสดง 10 วันก่อนหน้าค่าของตัวควบคุม PromisedDate

=DateDiff("d", [OrderDate], [ShippedDate])

ใช้ฟังก์ชัน DateDiff เพื่อแสดงความแตกต่างของจำนวนวันระหว่างค่าของตัวควบคุม OrderDate และ ShippedDate

=[InvoiceDate] + 30

ใช้การดำเนินการคำนวณกับวันที่เพื่อคำนวณวันที่ 30 วันหลังจากวันที่ในเขตข้อมูลหรือตัวควบคุม InvoiceDate

ด้านบนของหน้า

เงื่อนไขเพียงสองค่า

ตัวอย่างนิพจน์ในตารางต่อไปนี้ใช้ฟังก์ชัน IIf เพื่อส่งกลับค่าที่เป็นไปได้หนึ่งจากสองค่า คุณส่งสามอาร์กิวเมนต์ไปยังฟังก์ชัน IIf: อาร์กิวเมนต์แรกคือนิพจน์ที่ต้องส่งกลับเป็นค่า True หรือ False อาร์กิวเมนต์ที่สองคือค่าที่จะส่งกลับ ถ้านิพจน์เป็นจริง และอาร์กิวเมนต์สามเป็นค่าที่จะส่งกลับ ถ้านิพจน์เป็นเท็จ

นิพจน์

คำอธิบาย

=IIf([Confirmed] = "Yes", "Order Confirmed", "Order Not Confirmed")

ใช้ฟังก์ชัน IIf (Immediate If) เพื่อแสดงข้อความ "การสั่งซื้อได้รับการยืนยัน" ถ้าค่าของตัวควบคุม ยืนยัน เป็น Yes มิฉะนั้น จะแสดงข้อความ "Order Not Confirmed."

=IIf(IsNull([Country/region]), " ", [Country])

ใช้ฟังก์ชัน IIf และ IsNull เพื่อแสดงสตริงเปล่า ถ้าค่าของตัวควบคุม ประเทศ/ภูมิภาค เป็น null มิฉะนั้น จะแสดงค่าของตัวควบคุม ประเทศ/ภูมิภาค

=IIf(IsNull([Region]), [City] & " " & [PostalCode], [City] & " " & [Region] & " " & [PostalCode])

ใช้ฟังก์ชัน IIf และ IsNull เพื่อแสดงค่าของตัวควบคุม เมือง และ PostalCode ถ้าค่าในตัวควบคุม ภูมิภาค เป็น null มิฉะนั้น จะแสดงค่าของเขตข้อมูลหรือตัวควบคุม เมือง ภูมิภาค และ PostalCode

=IIf(IsNull([RequiredDate]) Or IsNull([ShippedDate]), "Check for a missing date", [RequiredDate] - [ShippedDate])

ใช้ฟังก์ชัน IIf และ IsNull เพื่อแสดงข้อความ "ตรวจสอบวันที่หายไป" ถ้าผลลัพธ์ของการลบ ShippedDate จาก RequiredDate เป็น null มิฉะนั้น จะแสดงช่วงระหว่างค่าวันที่ของตัวควบคุม RequiredDate และ ShippedDate

ด้านบนของหน้า

คิวรีและตัวกรอง

ส่วนนี้จะมีตัวอย่างของนิพจน์ที่คุณสามารถใช้เพื่อสร้างเขตข้อมูลที่ผ่านการคำนวณในคิวรี หรือเพื่อใส่เกณฑ์ลงในคิวรี เขตข้อมูลที่ผ่านการคำนวณคือคอลัมน์ในคิวรีที่เป็นผลลัพธ์จากนิพจน์ ตัวอย่างเช่น คุณสามารถคำนวณค่า รวมค่าข้อความ เช่น ชื่อและนามสกุล หรือจัดรูปแบบเป็นส่วนของวันที่

คุณใช้เกณฑ์ในคิวรีเพื่อจำกัดระเบียนที่คุณทำงาน ตัวอย่างเช่น คุณสามารถใช้ตัวดำเนินการ Between เพื่อใส่วันที่เริ่มต้นและวันที่สิ้นสุดและจำกัดผลลัพธ์ของคิวรีของคุณไปยังการสั่งซื้อที่จัดส่งระหว่างวันที่เหล่านั้น

ต่อไปนี้คือตัวอย่างของนิพจน์สำหรับใช้ในคิวรี

การดำเนินการข้อความ

นิพจน์ในตารางต่อไปนี้จะใช้ตัวดำเนินการ & และ + ในการรวมสตริงข้อความ ใช้ฟังก์ชันที่มีอยู่ภายในเพื่อดำเนินการสตริงข้อความ หรือดำเนินการบนข้อความเพื่อสร้างเขตข้อมูลที่ผ่านการคำนวณ

นิพจน์

คำอธิบาย

FullName: [FirstName] & " " & [LastName]

สร้างเขตข้อมูลที่เรียกว่า FullName ที่แสดงค่าในเขตข้อมูล FirstName และ LastName ซึ่งคั่นด้วยช่องว่าง

Address2: [City] & " " & [Region] & " " & [PostalCode]

สร้างเขตข้อมูลที่เรียกว่า ที่อยู่2 ที่แสดงค่าในเขตข้อมูล เมือง ภูมิภาค และ PostalCode ซึ่งคั่นด้วยช่องว่าง

ProductInitial: Left([ProductName], 1)

สร้างเขตข้อมูลที่เรียกว่า ProductInitial แล้วใช้ฟังก์ชัน Left เพื่อแสดง ในเขตข้อมูล ProductInitial อักขระตัวแรกของค่าในเขตข้อมูล ProductName

TypeCode: Right([AssetCode], 2)

สร้างเขตข้อมูลที่เรียกว่า รหัสประเภท แล้วใช้ฟังก์ชัน Right เพื่อแสดงอักขระสองตัวสุดท้ายของค่าในเขตข้อมูล AssetCode

AreaCode: Mid([Phone],2,3)

สร้างเขตข้อมูลที่เรียกว่า รหัสพื้นที่ แล้วใช้ฟังก์ชัน Mid เพื่อแสดงอักขระสามตัวที่เริ่มต้นด้วยอักขระตัวที่สองของค่าในเขตข้อมูล โทรศัพท์

ExtendedPrice: CCur([Order Details].[Unit Price]*[Quantity]*(1-[Discount])/100)*100

ตั้งชื่อเขตข้อมูลจากการคำนวณ ExtendedPrice แล้วใช้ฟังก์ชัน CCur เพื่อคำนวณผลรวมรายการที่มีส่วนลดที่นำไปใช้

ด้านบนของหน้า

การดำเนินการคำนวณ

คุณสามารถใช้นิพจน์เพื่อบวก ลบ คูณ และหารค่าในเขตข้อมูลหรือตัวควบคุมอย่างน้อยสองตัวได้ คุณยังสามารถดำเนินการทางคณิตศาสตร์กับวันที่ ตัวอย่างเช่น สมมติว่าคุณมีเขตข้อมูลวันที่/เวลา ที่เรียกว่า RequiredDate นิพจน์ =[RequiredDate] - 2 ส่งกลับค่าวันที่/เวลาที่เท่ากับสองวันก่อนหน้าค่าในเขตข้อมูล RequiredDate

นิพจน์

คำอธิบาย

PrimeFreight: [Freight] * 1.1

สร้างเขตข้อมูลที่เรียกว่า ค่าขนส่งสินค้าหลัก แล้วแสดงค่าขนส่งบวกด้วย 10 เปอร์เซ็นต์ในเขตข้อมูล

OrderAmount: [Quantity] * [UnitPrice]

สร้างเขตข้อมูลที่เรียกว่า OrderAmount แล้วแสดงผลคูณของค่าในเขตข้อมูล ปริมาณ และ UnitPrice

LeadTime: [RequiredDate] - [ShippedDate]

สร้างเขตข้อมูลที่เรียกว่า LeadTime แล้วแสดงความแตกต่างระหว่างค่าในเขตข้อมูล RequiredDate และ ShippedDate

TotalStock: [UnitsInStock]+[UnitsOnOrder]

สร้างเขตข้อมูลที่เรียกว่า ยอดรวมสินค้า แล้วแสดงผลรวมของค่าในเขตข้อมูล สินค้าคงคลัง และ สินค้าที่ถูกสั่งซื้อ

FreightPercentage: Sum([Freight])/Sum([Subtotal]) *100

สร้างเขตข้อมูลที่เรียกว่า เปอร์เซ็นต์ค่าขนส่งสินค้า แล้วแสดงเปอร์เซ็นต์ของค่าขนส่งของแต่ละผลรวมย่อย นิพจน์นี้จะใช้ฟังก์ชัน Sum เพื่อหาผลรวมของค่าในเขตข้อมูล ค่าขนส่งสินค้า แล้วแบ่งผลรวมเหล่านั้นด้วยผลรวมของค่าในเขตข้อมูล ผลรวมย่อย

เมื่อต้องการใช้นิพจน์นี้ คุณจะต้องแปลงคิวรีที่เลือกของคุณเป็นคิวรี Totals เนื่องจากคุณจะต้องใช้แถว ผลรวม ในเส้นตารางออกแบบ และคุณต้องตั้งค่าเซลล์ ผลรวม สำหรับเขตข้อมูลนี้เป็น นิพจน์

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการสร้างคิวรี Totals ให้ดูบทความ รวมข้อมูลโดยใช้คิวรี

ถ้าคุณตั้งค่าคุณสมบัติ Format ของเขตข้อมูลเป็น Percent ไม่ต้องใส่ *100

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการใช้ฟังก์ชันการรวมและการรวมค่าในเขตข้อมูลและคอลัมน์ ให้ดูบทความ รวมข้อมูลโดยใช้คิวรีนับข้อมูลโดยใช้คิวรีแสดงผลรวมคอลัมน์ในแผ่นข้อมูลโดยใช้แถวผลรวม และ แสดงผลรวมคอลัมน์ในแผ่นข้อมูล

ด้านบนของหน้า

การดำเนินการวันที่

ฐานข้อมูลเกือบทั้งหมดจะจัดเก็บและติดตามวันที่และเวลา คุณทำงานกับวันที่และเวลาใน Access ด้วยการตั้งค่าเขตข้อมูลวันที่และเวลาในตารางของคุณเป็นชนิดข้อมูล วันที่/เวลา Access สามารถดำเนินการคำนวณบนวันที่ ตัวอย่างเช่น คุณสามารถคำนวณจำนวนวันที่ผ่านไปตั้งแต่วันที่ในใบแจ้งหนี้เพื่อคำนวณระยะเวลาบัญชีรายรับของคุณ

นิพจน์

คำอธิบาย

LagTime: DateDiff("d", [OrderDate], [ShippedDate])

สร้างเขตข้อมูลที่เรียกว่า LagTime แล้วใช้ฟังก์ชัน DateDiff เพื่อแสดงจำนวนวันระหว่างวันที่สั่งซื้อกับวันที่จัดส่ง

YearHired: DatePart("yyyy",[HireDate])

สร้างเขตข้อมูลที่เรียกว่า ปีที่ว่าจ้าง แล้วใช้ฟังก์ชัน DatePart เพื่อแสดงปีที่จ้างพนักงานแต่ละคน

MinusThirty: Date( )- 30

สร้างเขตข้อมูลที่เรียกว่า ลบสามสิบ แล้วใช้ฟังก์ชัน Date เพื่อแสดง 30 วันก่อนหน้าวันที่ปัจจุบัน

ด้านบนของหน้า

ฟังก์ชันการรวมของ SQL

นิพจน์ในตารางต่อไปนี้ใช้ฟังก์ชัน SQL (ภาษาคิวรีที่มีโครงสร้าง) ที่รวมหรือสรุปข้อมูล บ่อยครั้ง คุณจะเห็นฟังก์ชันเหล่านี้ (ตัวอย่างเช่น Sum, Count และ Avg) ถูกเรียกเป็นฟังก์ชันการรวม

นอกจากฟังก์ชันการรวม Access ยังมีฟังก์ชันการรวม “โดเมน” ที่คุณใช้ในการรวมหรือนับค่าตามที่เลือก ตัวอย่างเช่น คุณสามารถนับเฉพาะค่าภายในช่วงหรือค้นหาค่าจากตารางอื่น ชุดฟังก์ชันการรวมโดเมนจะมี ฟังก์ชัน DSumฟังก์ชัน DCount และ ฟังก์ชัน DAvg

เมื่อต้องการคำนวณผลรวม บ่อยครั้ง คุณจะต้องสร้างคิวรีผลรวม ตัวอย่างเช่น เมื่อต้องการสรุปตามกลุ่ม คุณจำเป็นต้องใช้คิวรีผลรวม เมื่อต้องการเปิดใช้งานคิวรีผลรวมจากเส้นตารางออกแบบคิวรี ให้คลิก ผลรวม บนเมนู มุมมอง

นิพจน์

คำอธิบาย

RowCount: Count(*)

สร้างเขตข้อมูลที่เรียกว่า นับแถว แล้วใช้ฟังก์ชัน Count เพื่อนับจำนวนระเบียนในคิวรี รวมถึง ระเบียนที่มีเขตข้อมูล null (ว่างเปล่า)

FreightPercentage: Sum([Freight])/Sum([Subtotal]) *100

สร้างเขตข้อมูลที่เรียกว่า เปอร์เซ็นต์ค่าขนส่งสินค้า แล้วคำนวณเปอร์เซ็นต์ค่าขนส่งของแต่ละผลรวมย่อย โดยการหารผลรวมของค่าในเขตข้อมูล ค่าขนส่งสินค้า ด้วยผลรวมของค่าในเขตข้อมูล ผลรวมย่อย (ตัวอย่างนี้ใช้ฟังก์ชัน Sum)

คุณต้องใช้นิพจน์นี้กับคิวรีผลรวม ถ้าคุณตั้งค่าคุณสมบัติ Format ของเขตข้อมูลเป็น Percent ไม่ต้องใส่ *100

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการสร้างคิวรีผลรวม ให้ดูบทความ รวมข้อมูลโดยใช้คิวรี

AverageFreight: DAvg("[Freight]", "[Orders]")

สร้างเขตข้อมูลที่เรียกว่า ค่าขนส่งสินค้าโดยเฉลี่ย แล้วใช้ฟังก์ชัน DAvg เพื่อคำนวณค่าขนส่งโดยเฉลี่ยของการสั่งซื้อทั้งหมดที่รวมอยู่ในคิวรีผลรวม

ด้านบนของหน้า

เขตข้อมูลที่มีข้อมูลขาดหายไป

นิพจน์ที่แสดงที่นี่ทำงานกับเขตข้อมูลที่มีข้อมูลบางส่วนหายไป เช่น เขตข้อมูลที่มีค่า null (ไม่ทราบหรือไม่สามารถระบุ) คุณจะพบค่า Null บ่อยครั้ง เช่น ราคาที่ไม่ทราบของผลิตภัณฑ์ใหม่ หรือค่าที่เพื่อนร่วมงานลืมเพิ่มในการสั่งซื้อ ความสามารถในการค้นหาและประมวลผลค่า null อาจเป็นส่วนสำคัญของการดำเนินการฐานข้อมูล และนิพจน์ในตารางต่อไปนี้จะแสดงวิธีทั่วไปในการจัดการกับค่า null

นิพจน์

คำอธิบาย

CurrentCountryRegion: IIf(IsNull([CountryRegion]), " ", [CountryRegion])

สร้างเขตข้อมูลที่เรียกว่า ภูมิภาคประเทศปัจจุบัน แล้วใช้ฟังก์ชัน IIf และ IsNull เพื่อแสดงสตริงว่างในเขตข้อมูล เมื่อเขตข้อมูล ภูมิภาคประเทศ มีค่า null มิฉะนั้น จะแสดงเนื้อหาของเขตข้อมูล ภูมิภาคประเทศ

LeadTime: IIf(IsNull([RequiredDate] - [ShippedDate]), "Check for a missing date", [RequiredDate] - [ShippedDate])

สร้างเขตข้อมูลที่เรียกว่า เวลาเตรียมการ แล้วใช้ฟังก์ชัน IIf และ IsNull เพื่อแสดงข้อความ "ตรวจสอบวันที่หายไป" ถ้าค่าในเขตข้อมูล RequiredDate หรือเขตข้อมูล ShippedDate เป็น null มิฉะนั้น จะแสดงความแตกต่างของวันที่

SixMonthSales: Nz([Qtr1Sales]) + Nz([Qtr2Sales])

สร้างเขตข้อมูลที่เรียกว่า SixMonthSales แล้วแสดงผลรวมของค่าในเขตข้อมูล ยอดขายไตรมาสที่ 1 และ ยอดขายไตรมาสที่ 2 โดยใช้ฟังก์ชัน Nz เพื่อแปลงค่า null ให้เป็นศูนย์

ด้านบนของหน้า

เขตข้อมูลจากการคำนวณที่มีคิวรีย่อย

คุณสามารถใช้คิวรีซ้อนกัน หรือที่เรียกว่าคิวรีย่อย เพื่อสร้างเขตข้อมูลที่ผ่านการคำนวณ นิพจน์ในตารางต่อไปนี้เป็นตัวอย่างหนึ่งของเขตข้อมูลที่ผ่านการคำนวณที่เป็นผลลัพธ์จากคิวรีย่อย

นิพจน์

คำอธิบาย

Cat: (SELECT [CategoryName] FROM [Categories] WHERE [Products].[CategoryID]=[Categories].[CategoryID])

สร้างเขตข้อมูลที่เรียกว่า ประเภท แล้วแสดง CategoryName ถ้า CategoryID จากตาราง ประเภท เหมือนกับ CategoryID จากตาราง ผลิตภัณฑ์

ด้านบนของหน้า

ตรงกับค่าข้อความ

ตัวอย่างนิพจน์ในตารางนี้จะแสดงเกณฑ์ที่ตรงกับค่าข้อความทั้งหมดหรือบางส่วน

เขตข้อมูล

นิพจน์

คำอธิบาย

ShipCity

"London"

แสดงการสั่งซื้อที่จัดส่งไปยังลอนดอน

ShipCity

"London" Or "Hedge End"

ใช้ตัวดำเนินการ Or เพื่อแสดงการสั่งซื้อที่จัดส่งไปยังลอนดอนหรือเฮดจ์เอนด์

ShipCountryRegion

In("Canada", "UK")

ใช้ตัวดำเนินการ In เพื่อแสดงการสั่งซื้อที่จัดส่งไปยังแคนาดาหรือสหราชอาณาจักร

ShipCountryRegion

Not "USA"

ใช้ตัวดำเนินการ Not เพื่อแสดงการสั่งซื้อที่จัดส่งไปยังประเทศ/ภูมิภาคที่ไม่ใช่สหรัฐอเมริกา

ProductName

Not Like "C*"

ใช้ตัวดำเนินการ Not และอักขระตัวแทน * เพื่อแสดงผลิตภัณฑ์ที่มีชื่อที่ไม่ได้ขึ้นต้นด้วยตัวอักษร C

CompanyName

>="N"

แสดงการสั่งซื้อที่จัดส่งไปยังบริษัทที่มีชื่อที่ขึ้นต้นด้วยตัวอักษร N ถึง Z

รหัสผลิตภัณฑ์

Right([ProductCode], 2)="99"

ใช้ฟังก์ชัน Right เพื่อแสดงการสั่งซื้อที่มีค่า รหัสผลิตภัณฑ์ ที่ลงท้ายด้วย 99

ShipName

Like "S*"

แสดงการสั่งซื้อที่จัดส่งไปยังลูกค้าที่มีชื่อที่ขึ้นต้นด้วยตัวอักษร S

ด้านบนของหน้า

ตรงกับเกณฑ์วันที่

นิพจน์ในตารางต่อไปนี้แสดงการใช้วันที่และฟังก์ชันที่เกี่ยวข้องในนิพจน์เกณฑ์ สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการใส่และการใช้ค่าวันที่ ให้ดูบทความ จัดรูปแบบเขตข้อมูลวันที่และเวลา

เขตข้อมูล

นิพจน์

คำอธิบาย

ShippedDate

#2/2/2017#

แสดงการสั่งซื้อที่จัดส่งในวันที่ 2 กุมภาพันธ์ 2017

ShippedDate

Date()

แสดงการสั่งซื้อที่จัดส่งในวันนี้

RequiredDate

Between Date( ) And DateAdd("m", 3, Date( ))

ใช้ตัวดำเนินการ Between...And และฟังก์ชัน DateAdd และ Date เพื่อแสดงการสั่งซื้อที่จำเป็นระหว่างวันนี้และสามเดือนนับจากวันนี้

OrderDate

< Date( ) - 30

ใช้ฟังก์ชัน Date เพื่อแสดงการสั่งซื้อที่มีระยะเวลานานกว่า 30 วัน

OrderDate

Year([OrderDate])=2017

ใช้ฟังก์ชัน Year เพื่อแสดงการสั่งซื้อที่มีวันที่สั่งซื้อในปี 2017

OrderDate

DatePart("q", [OrderDate])=4

ใช้ฟังก์ชัน DatePart เพื่อแสดงการสั่งซื้อสำหรับไตรมาสที่สี่ของปฏิทิน

OrderDate

DateSerial(Year ([OrderDate]), Month([OrderDate])+1, 1)-1

ใช้ฟังก์ชัน DateSerial, Year และ Month เพื่อแสดงการสั่งซื้อในวันสุดท้ายของแต่ละเดือน

OrderDate

Year([OrderDate])= Year(Now()) And Month([OrderDate])= Month(Now())

ใช้ฟังก์ชัน Year และ Month และตัวดำเนินการ And เพื่อแสดงการสั่งซื้อในปีและเดือนปัจจุบัน

ShippedDate

Between #1/5/2017# And #1/10/2017#

ใช้ตัวดำเนินการ Between...And เพื่อแสดงการสั่งซื้อที่จำส่งระหว่าง 5 ม.ค. 2017 และ10 ม.ค. 2017

RequiredDate

Between Date( ) And DateAdd("M", 3, Date( ))

ใช้ตัวดำเนินการ Between...And เพื่อแสดงการสั่งซื้อที่จำเป็นระหว่างวันนี้และสามเดือนนับจากวันนี้

วันเกิด

Month([BirthDate])=Month(Date())

ใช้ฟังก์ชัน Month และ Date เพื่อแสดงพนักงานที่มีวันเกิดในเดือนนี้

ด้านบนของหน้า

ค้นหาข้อมูลที่ขาดหายไป

นิพจน์ในตารางต่อไปนี้ทำงานกับเขตข้อมูลที่มีข้อมูลบางส่วนหายไป — ซึ่งอาจมีค่า null หรือสตริงที่มีความยาวเป็นศูนย์ ค่า Null แสดงถึงการขาดข้อมูล ซึ่งไม่ได้หมายถึงค่าศูนย์หรือค่าใดๆ เลย Access สนับสนุนแนวคิดเกี่ยวกับข้อมูลที่หายไป เนื่องจากเป็นแนวคิดที่สำคัญในการรวมฐานข้อมูล ในชีวิตจริง ข้อมูลมักหายไปบ่อยครั้ง แม้ว่าจะเป็นเพียงชั่วคราว (ตัวอย่างเช่น ยังไม่ได้กำหนดราคาของผลิตภัณฑ์ใหม่) ดังนั้น ฐานข้อมูลที่จำลองสิ่งต่างๆ ในชีวิตจริง เช่น ธุรกิจ จะต้องสามารถบันทึกข้อมูลเป็น หายไป ได้ คุณสามารถใช้ฟังก์ชัน IsNull ในการกำหนด ถ้าเขตข้อมูลหรือตัวควบคุมมีค่า null และคุณอาจใช้ฟังก์ชัน Nz เพื่อแปลงค่า null เป็นศูนย์

เขตข้อมูล

นิพจน์

คำอธิบาย

ShipRegion

Is Null

แสดงการสั่งซื้อของลูกค้าที่มีเขตข้อมูล ShipRegion เป็น null (หายไป)

ShipRegion

Is Not Null

แสดงการสั่งซื้อของลูกค้าที่มีเขตข้อมูล ShipRegion ที่มีค่า

โทรสาร

""

แสดงการสั่งซื้อของลูกค้าที่ไม่มีเครื่องโทรสาร ระบุด้วยค่าสตริงที่มีความยาวเป็นศูนย์ในเขตข้อมูล แฟกซ์ แทนที่จะเป็นค่า null (หายไป)

ด้านบนของหน้า

ตรงกับรูปแบบระเบียนที่มี Like

ตัวดำเนินการ Like มีความยืดหยุ่นในการใช้งานสูง เมื่อคุณพยายามจับคู่ระเบียนตามรูปแบบ เนื่องจากคุณสามารถใช้ Like กับอักขระตัวแทนและกำหนดรูปแบบให้ Access จับคู่ได้ ตัวอย่างเช่น อักขระตัวแทน * (ดอกจัน) จะจับคู่กับลำดับอักขระทุกประเภท และทำให้ง่ายต่อการค้นหาทุกๆ ชื่อที่ขึ้นต้นด้วยตัวอักษร ตัวอย่างเช่น คุณใช้นิพจน์ Like "S*" เพื่อค้นหาชื่อทั้งหมดที่ขึ้นต้นด้วยตัวอักษร S สำหรับข้อมูลเพิ่มเติม ให้ดูบทความ ตัวดำเนินการ Like

เขตข้อมูล

นิพจน์

คำอธิบาย

ShipName

Like "S*"

ค้นหาระเบียนทั้งหมดในเขตข้อมูล ShipName ที่ขึ้นต้นด้วยตัวอักษร S

ShipName

Like "*Imports"

ค้นหาระเบียนทั้งหมดในเขตข้อมูล ShipName ที่ลงท้ายด้วยคำว่า “นำเข้า"

ShipName

Like "[A-D]*"

ค้นหาระเบียนทั้งหมดในเขตข้อมูล ShipName ที่ขึ้นต้นด้วยตัวอักษร A, B, C หรือ D

ShipName

Like "*ar*"

ค้นหาระเบียนทั้งหมดในเขตข้อมูล ShipName ที่มีลำดับอักษร "ar"

ShipName

Like "Maison Dewe?"

ค้นหาระเบียนทั้งหมดในเขตข้อมูล ShipName ที่มี “Maison" ในส่วนแรกของค่าและสตริงห้าตัวอักษรที่มีตัวอักษรสี่ตัวแรกเป็น “Dewe" และไม่ทราบตัวอักษรตัวสุดท้าย

ShipName

Not Like "A*"

ค้นหาระเบียนทั้งหมดในเขตข้อมูล ShipName ที่ไม่ได้ขึ้นต้นด้วยตัวอักษร A

ด้านบนของหน้า

ตรงกับแถวที่มีการรวม SQL

คุณสามารถใช้ฟังก์ชันการรวม SQL หรือโดเมนเมื่อคุณต้องการรวม นับ หาค่าเฉลี่ยตามที่เลือก ตัวอย่างเช่น คุณอาจต้องการนับเฉพาะค่าที่อยู่ในช่วงที่ระบุ หรือค่าที่ประเมินเป็น ใช่ ในบางครั้ง คุณอาจต้องค้นหาค่าจากตารางอื่นเพื่อให้คุณสามารถแสดงได้ ตัวอย่างนิพจน์ในตารางต่อไปนี้ใช้ฟังก์ชันการรวมโดเมนเพื่อทำการคำนวณชุดของค่า และใช้ผลลัพธ์เป็นเกณฑ์ของคิวรี

เขตข้อมูล

นิพจน์

คำอธิบาย

ค่าขนส่งสินค้า

> (DStDev("[Freight]", "Orders") + DAvg("[Freight]", "Orders"))

ใช้ฟังก์ชัน DStDev และ DAvg เพื่อแสดงการสั่งซื้อทั้งหมดที่มีค่าขนส่งสูงกว่าค่าเฉลี่ยรวมกับค่าเบี่ยงเบนมาตรฐานของค่าขนส่ง

ปริมาณ

> DAvg("[Quantity]", "[Order Details]")

ใช้ฟังก์ชัน DAvg เพื่อแสดงผลิตภัณฑ์ที่มีจำนวนการสั่งซื้อสูงกว่าจำนวนการสั่งซื้อโดยเฉลี่ย

ด้านบนของหน้า

ตรงกับเขตข้อมูลที่มีคิวรีย่อย

คุณใช้คิวรีย่อย หรือที่เรียกว่าคิวรีซ้อนกัน ในคำนวณค่าสำหรับการใช้เป็นเกณฑ์ ตัวอย่างนิพจน์ในตารางต่อไปนี้จะจับคู่แถวตามผลลัพธ์ที่ส่งกลับโดยคิวรีย่อย

เขตข้อมูล

นิพจน์

แสดง

UnitPrice

(SELECT [UnitPrice] FROM [Products] WHERE [ProductName] = "Aniseed Syrup")

ผลิตภัณฑ์ที่มีราคาเหมือนกับราคา น้ำเชื่อม Aniseed

UnitPrice

>(SELECT AVG([UnitPrice]) FROM [Products])

ผลิตภัณฑ์ที่มีราคาต่อหน่วยสูงกว่าค่าเฉลี่ย

เงินเดือน

> ALL (SELECT [Salary] FROM [Employees] WHERE ([Title] LIKE "*Manager*") OR ([Title] LIKE "*Vice President*"))

เงินเดือนของพนักงานขายทุกคนที่มีเงินเดือนสูงกว่าพนักงานทุกคนที่มี “ผู้จัดการ" หรือ "รองประธาน" อยู่ในตำแหน่งงานของพวกเขา

ยอดรวมการสั่งซื้อ: [UnitPrice] * [ปริมาณ]

> (SELECT AVG([UnitPrice] * [Quantity]) FROM [Order Details])

การสั่งซื้อที่มีผลรวมสูงกว่าค่าการสั่งซื้อโดยเฉลี่ย

ด้านบนของหน้า

คิวรีการอัปเดต

คุณสามารถใช้คิวรีอัปเดตเพื่อปรับเปลี่ยนข้อมูลในเขตข้อมูลอย่างน้อยหนึ่งเขตข้อมูลที่มีอยู่ในฐานข้อมูล ตัวอย่างเช่น คุณสามารถแทนที่ค่าหรือลบค่าทั้งหมด ตารางนี้แสดงวิธีการใช้นิพจน์ในคิวรีอัปเดต คุณใช้นิพจน์เหล่านี้ในแถว อัปเดตเป็น ในเส้นตารางออกแบบคิวรีสำหรับเขตข้อมูลที่คุณต้องการอัปเดต

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการสร้างคิวรีอัปเดต โปรดดูบทความ สร้างคิวรีแบบใช้อัปเดตข้อมูล

เขตข้อมูล

นิพจน์

ผลลัพธ์

ชื่อเรื่อง

"Salesperson"

เปลี่ยนค่าข้อความเป็น พนักงานขาย

วันเริ่มต้นโครงการ

#8/10/17#

เปลี่ยนค่าวันที่เป็น 10 ส.ค. 17

เกษียณ

Yes

เปลี่ยนค่า ไม่ใช่ ในเขตข้อมูล ใช่/ไม่ใช่ เป็น ใช่

"PN" & [หมายเลขชิ้นส่วน]

"PN" & [PartNumber]

เพิ่ม PN ไปยังจุดเริ่มต้นของหมายเลขชิ้นส่วนแต่ละหมายเลข

ยอดรวมรายการ

[UnitPrice] * [Quantity]

คำนวณผลคูณของ UnitPrice และ ปริมาณ

ค่าขนส่งสินค้า

[Freight] * 1.5

เพิ่มค่าขนส่งสินค้าอีก 50 เปอร์เซ็นต์

ยอดขาย

DSum("[Quantity] * [UnitPrice]", "Order Details", "[ProductID]=" & [ProductID])

เมื่อค่า ProductID ในตารางปัจจุบันตรงกับค่า ProductID ในตาราง รายละเอียดการสั่งซื้อ ให้อัปเดตยอดขายรวมตามผลคูณของ ปริมาณ และ UnitPrice

ShipPostalCode

Right([ShipPostalCode], 5)

ตัดอักขระด้านซ้ายสุด เหลือไว้เพียงอักขระทางขวาสุดห้าตัว

UnitPrice

Nz([UnitPrice])

เปลี่ยนค่า null (ไม่สามารถระบุหรือไม่ทราบ) เป็นศูนย์ (0) ในเขตข้อมูล UnitPrice

ด้านบนของหน้า

คำสั่ง SQL

ภาษาคิวรีที่มีโครงสร้างหรือ SQL คือภาษาคิวรีที่ Access ใช้ ทุกคิวรีที่คุณสร้างในมุมมองออกแบบคิวรีสามารถแสดงได้โดยใช้ SQL เมื่อต้องการดูคำสั่ง SQL ของคิวรีต่างๆ ให้คลิก มุมมอง SQL บนเมนู มุมมอง ตารางต่อไปนี้แสดงตัวอย่างคำสั่ง SQL ที่ใช้นิพจน์

คำสั่ง SQL ที่ใช้นิพจน์

ผลลัพธ์

SELECT [FirstName],[LastName] FROM [Employees] WHERE [LastName]="Danseglio";

แสดงค่าในเขตข้อมูล FirstName และ LastName สำหรับพนักงานที่มีนามสกุล Danseglio

SELECT [ProductID],[ProductName] FROM [Products] WHERE [CategoryID]=Forms![New Products]![CategoryID];

แสดงค่าในเขตข้อมูล ProductID และ ProductName ในตาราง ผลิตภัณฑ์ สำหรับระเบียนที่มีค่า CategoryID ตรงกับค่า CategoryID ที่ระบุในแบบฟอร์ม ผลิตภัณฑ์ใหม่

SELECT Avg([ExtendedPrice]) AS [Average Extended Price] FROM [Order Details Extended] WHERE [ExtendedPrice]>1000;

คำนวณราคาที่เพิ่มขึ้นโดยเฉลี่ยสำหรับการสั่งซื้อที่มีค่าในเขตข้อมูล ExtendedPrice มากกว่า 1000 และแสดงในเขตข้อมูลที่ชื่อ ราคาที่เพิ่มขึ้นโดยเฉลี่ย

SELECT [CategoryID], Count([ProductID]) AS [CountOfProductID] FROM [Products] GROUP BY [CategoryID] HAVING Count([ProductID])>10;

ในเขตข้อมูลที่ชื่อ CountOfProductID จะแสดงจำนวนรวมของผลิตภัณฑ์ของประเภทที่มีผลิตภัณฑ์มากกว่า 10 รายการ

ด้านบนของหน้า

นิพจน์ตาราง

วิธีทั่วไปสองวิธีในการใช้นิพจน์ในตารางคือการกำหนดค่าเริ่มต้นและการสร้างกฎการตรวจสอบ

ค่าเริ่มต้นของเขตข้อมูล

เมื่อคุณออกแบบฐานข้อมูล คุณอาจต้องการกำหนดค่าเริ่มต้นให้กับเขตข้อมูลหรือตัวควบคุม เข้าถึงแล้วใส่ค่าเริ่มต้น เมื่อระเบียนใหม่ที่มีเขตข้อมูลถูกสร้างขึ้น หรือเมื่อวัตถุที่มีตัวควบคุมถูกสร้างขึ้น นิพจน์ในตารางต่อไปนี้แสดงตัวอย่างค่าเริ่มต้นของเขตข้อมูลหรือตัวควบคุม ถ้าตัวควบคุมถูกผูกไว้กับเขตข้อมูลในตาราง และเขตข้อมูลมีค่าเริ่มต้น ค่าเริ่มต้นของตัวควบคุมจะถูกใช้ก่อน

เขตข้อมูล

นิพจน์

ค่าเขตข้อมูลเริ่มต้น

ปริมาณ

1

1

ภูมิภาค

"MT"

MT

ภูมิภาค

"New York, N.Y."

นิวยอร์ก N.Y. (โปรดสังเกตว่าคุณต้องใส่ค่าในเครื่องหมายอัญประกาศ ถ้ามีเครื่องหมายวรรคตอน)

โทรสาร

""

สตริงที่มีความยาวเป็นศูนย์ระบุว่า ตามค่าเริ่มต้น เขตข้อมูลนี้ควรจะว่างเปล่าแทนที่จะมีค่า null

วันที่สั่งซื้อ

Date( )

วันที่ของวันนี้

วันครบกำหนด

Date() + 60

60 วันนับจากวันนี้

ด้านบนของหน้า

กฎการตรวจสอบความถูกต้องของเขตข้อมูล

คุณสามารถสร้างกฎการตรวจสอบสำหรับเขตข้อมูลหรือตัวควบคุมได้โดยใช้นิพจน์ Access จะบังคับใช้กฎ เมื่อข้อมูลถูกใส่ลงในเขตข้อมูลหรือตัวควบคุม เมื่อต้องการสร้างกฎการตรวจสอบ คุณต้องปรับเปลี่ยนคุณสมบัติ กฎการตรวจสอบ ของเขตข้อมูลหรือตัวควบคุม คุณควรพิจารณาการตั้งค่าคุณสมบัติ ข้อความตรวจสอบ ซึ่งมีข้อความที่ Access แสดงเมื่อมีละเมิดกฎการตรวจสอบ ถ้าคุณไม่ได้ตั้งค่าคุณสมบัติ ข้อความตรวจสอบ Access จะแสดงข้อความแสดงข้อผิดพลาดเริ่มต้น

ตัวอย่างในตารางต่อไปนี้แสดงนิพจน์กฎการตรวจสอบสำหรับคุณสมบัติ กฎการตรวจสอบ และข้อความที่เกี่ยวข้องสำหรับคุณสมบติ ข้อความตรวจสอบ

คุณสมบัติ ValidationRule

คุณสมบัติ ValidationText

<> 0

โปรดใส่ค่าที่ไม่ใช่ค่าศูนย์

0 Or > 100

ค่าต้องเป็น 0 หรือมากกว่า 100

Like "K???"

ค่าต้องเป็นอักขระสี่ตัว ที่ขึ้นต้นด้วยตัวอักษร K

< #1/1/2017#

ใส่วันที่ก่อนวันที่ 1/1/2017

>= #1/1/2017# And < #1/1/2008#

วันที่ต้องอยู่ในช่วงปี 2017

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการตรวจสอบข้อมูล ให้ดูบทความ สร้างกฎการตรวจสอบเพื่อตรวจสอบข้อมูลในเขตข้อมูล

ด้านบนของหน้า

นิพจน์แมโคร

ในบางกรณี คุณอาจต้องการดำเนินการแอคชันหรือชุดแอคชันในแมโคร เมื่อเงื่อนไขบางอย่างเป็นจริงเท่านั้น ตัวอย่างเช่น สมมติว่าคุณต้องการให้แอคชันดำเนินการเมื่อค่าของกล่องข้อความตัวนับเท่ากับ 10 คุณสามารถใช้นิพจน์เพื่อกำหนดเงื่อนไขในคอลัมน์ เงื่อนไข ของแมโครได้:

[Counter]=10

เหมือนกับคุณสมบัติ กฎการตรวจสอบ นิพจน์คอลัมน์ เงื่อนไข เป็นนิพจน์เงื่อนไขเช่นกัน ซึ่งจะถูกแก้เป็นค่า True หรือ False แอคชันจะเกิดขึ้นเมื่อเงื่อนไขเป็นจริงเท่านั้น

เคล็ดลับ    เมื่อต้องการบังคับให้ Access ละเว้นแอคชันชั่วคราว ให้พิมพ์ False เป็นเงื่อนไข วิธีนี้อาจมีประโยชน์ เมื่อคุณกำลังพยายามค้นหาปัญหาในแมโคร

ใช้นิพจน์นี้เพื่อดำเนินการแอคชัน

If

[City]="Paris"

ปารีส คือค่า เมือง ในเขตข้อมูลบนแบบฟอร์มที่เรียกใช้แมโคร

DCount("[OrderID]", "Orders") > 35

มีรายการมากกว่า 35 รายการในเขตข้อมูล OrderID ของตารางการสั่งซื้อ

DCount("*", "[Order Details]", "[OrderID]=" & Forms![Orders]![OrderID]) > 3

มีรายการมากกว่าสามรายการในตาราง รายละเอียดการสั่งซื้อ สำหรับเขตข้อมูล OrderID ของตารางที่ตรงกับเขตข้อมูล OrderID บนแบบฟอร์ม การสั่งซื้อ

[ShippedDate] Between #2-Feb-2017# And #2-Mar-2017#

ค่าของเขตข้อมูล ShippedDate บนแบบฟอร์มที่เรียกใช้แมโครอยู่ระหว่างวันที่ 2 ก.พ. 2017 และ 2 มี.ค. 2017

Forms![Products]![UnitsInStock] < 5

ค่าของเขตข้อมูล สินค้าคงคลัง บนแบบฟอร์ม ผลิตภัณฑ์ น้อยกว่า 5

IsNull([FirstName])

ค่า FirstName บนแบบฟอร์มที่เรียกใช้แมโครเป็น null (ไม่มีค่า) นิพจน์นี้จะเท่ากับ [FirstName] Is Null

[CountryRegion]="UK" And Forms![SalesTotals]![TotalOrds] > 100

ค่าในเขตข้อมูล ภูมิภาคประเทศ บนแบบฟอร์มที่เรียกใช้แมโครคือ สหราชอาณาจักร และค่าของเขตข้อมูล TotalOrds บนแบบฟอร์ม SalesTotal มีค่ามากกว่า 100

[CountryRegion] In ("France", "Italy", "Spain") And Len([PostalCode])<>5

ค่าในเขตข้อมูล ภูมิภาคประเทศ บนแบบฟอร์มที่เรียกใช้แมโครคือ ฝรั่งเศส อิตาลี หรือสเปน และรหัสไปรษณีย์มีความยาวที่ไม่ใช่อักขระ 5 ตัว

MsgBox("Confirm changes?",1)=1

คุณคลิก ตกลง ในกล่องโต้ตอบกล่องที่ฟังก์ชัน MsgBox แสดง ถ้าคุณคลิก ยกเลิก ในกล่องโต้ตอบ Access จะละเว้นแอคชัน

ด้านบนของหน้า

ดูเพิ่มเติม

ใช้ตัวสร้างนิพจน์

บทนำสู่นิพจน์

สร้างนิพจน์

คำแนะนำเกี่ยวกับไวยากรณ์ของนิพจน์

ขยายทักษะ Office ของคุณ
สำรวจการฝึกอบรม
รับฟีเจอร์ใหม่ก่อนใคร
เข้าร่วม Office Insider

ข้อมูลนี้เป็นประโยชน์หรือไม่

ขอบคุณสำหรับคำติชมของคุณ!

ขอขอบคุณสำหรับคำติชมของคุณ! เราคิดว่าอาจเป็นประโยชน์ที่จะให้คุณได้ติดต่อกับหนึ่งในตัวแทนฝ่ายสนับสนุน Office ของเรา

×