Online Reference |
Microsoft Reference |
|
|
DAvg Functionใช้ในการคำนวณค่าเฉลี่ยกลุ่มของค่าในกลุ่มเรคคอร์ด (Domain) ที่ระบุ ซึ่งสามารถนำไปใช้ในชุดคำสั่ง Visual Basic, มาโคร, expression ในคิวรี่ หรือตัว control แบบคำนวณ ตัวอย่างเช่น สามารถใช้ฟังก์ชัน DAvg ในแถว Criteria ในคิวรี่ของต้นทุนการขนส่งที่จำกัดเฉพาะผลลัพธ์จากเรคคอร์ดที่ค่าขนส่งสูงกว่าค่าเฉลี่ย หรือใช้ฟังก์ชัน DAvg เป็น expression ที่ตัว control แบบคำนวณและแสดงผลค่าเฉลี่ยของเรคคอร์ดก่อนหน้า ไวยากรณ์
อากิวเมนต์ของฟังก์ชัน DAvg มีรายละเอียด คือ
ลักษณะการประยุกต์เรคคอร์ดที่เก็บค่าว่าง จะไม่ได้รับการนำมาคำนวณหาค่าเฉลี่ย การใช้ฟังก์ชัน DAvg ในมาโคร หรือโมดูล, expression ในคิวรี่หรือตัว control ต้องสร้างอากิวเมนต์ criteria อย่างระมัดระวังเพื่อทำให้มั่นใจว่าการคำนวณถูกต้อง ฟังก์ชัน DAvg สามารถใช้ในการกำหนด criteria ในแถว Criteria ของคิวรี่ เช่น ถ้าต้องการดูรายการสินค้าที่ปริมาณการสั่งซื้อสูงกว่าค่าเฉลี่ยการสั่งซื้อ ให้สร้างคิวรี่ด้วย Table ชื่อ Orders, Orders Details และ Product เพิ่มฟิลด์ Product Name และ Quantity แล้วกำหนด expression ในแถว Criteria ของฟิลด์ Quantity ดังนี้ >DAvg("[Quantity]", "Orders") นอกจากนี้ฟังก์ชัน DAvg สามารถใช้เป็น expression ของฟิลด์คำนวณในคิวรี่ หรือ แถว Update To ในคิวรี่แบบ Update หมายเหตุ การใช้ฟังก์ชัน DAvg หรือฟังก์ชัน Avg ใน expression ของฟิลด์คำนวณในคิวรี่ผลรวม ฟังก์ชัน DAvg จะหาผลเฉลี่ยก่อนจัดกลุ่มข้อมูล ส่วนฟังก์ชัน Avg จะจัดกลุ่มข้อมูลก่อนหาค่าเฉลี่ย การใช้ฟังก์ชัน DAvg ในตัว control แบบคำนวณ ต้องมีการกำหนด criteria ในการคัดเลือกช่วงของข้อมูลที่จะให้ฟังก์ชัน DAvg หาค่า เช่น ถ้าต้องการดูต้นทุนเฉลี่ยของการส่งสินค้าไปที่ CA ให้ตั้งค่าของคุณสมบัติ ControlSource ใน text box ด้วย expression ดังนี้ =DAvg("[Freight]", "Orders", "[ShipRegion] = 'CA'") ส่วนการหาค่าเฉลี่ยของเรคคอร์ดทั้งหมดใน domain ให้ใช้ฟังก์ชัน Avg จะง่ายกว่า ฟังก์ชัน DAvg สามารถใช้ในโมดูล, มาโคร หรือตัว control แบบคำนวณบนฟอร์ม ถ้าฟิลด์ที่ต้องการดูค่าไม่ได้เป็นแหล่งข้อมูลของฟอร์ม เช่น ในฟอร์มที่ใช้แหล่งข้อมูลจาก Table ชื่อ Orders และต้องการดูฟิลด์ Quantity จาก Table ชื่อ Orders Detail เพื่อต้องการทราบจำนวนเฉลี่ยของสินค้าที่สั่งซื้อโดยลูกค้าที่ระบุ ฟังก์ชัน DAvg สามารถหาค่าคำนวณและแสดงผลของข้อมูลบนฟอร์มที่ใช้อยู่ได้ หมายเหตุ ฟังก์ชัน DAvg จะไม่นำเรคคอร์ดที่ยังไม่บันทึกการเปลี่ยนแปลงใน domain มาคำนวณ ถ้าต้องการนำมาคำนวณด้วยให้ทำการบันทึกก่อน ดูเพิ่มเติมฟังก์ชัน Avg (SQL Language Reference), ฟังก์ชัน DCount, ฟังก์ชัน DSum ตัวอย่างตัวอย่างการใช้ฟังก์ชัน DAvg ในการหาค่าค่าขนส่งเฉลี่ยสำหรับกาส่งสิน้าไปยัง UK ตั้งแต่วันที่ 1 มกราคม 1996 ซึ่ง domain คือ Table ชื่อ Orders, อากิวเมนต์ criteria คัดเลือกกลุ่มข้อมูลที่ฟิลด์ ShipCountry เท่ากับ UK และฟิลด์ ShippedDate มากกว่าหรือเท่ากับ 1 มกราคม 1996 หมายเหตุใช้ AND สำหรับ criteria แบบหลายเงื่อนไขในอากิวเมนต์ criteria เพื่อคัดเลือกเรคคอร์ดที่สอดคล้องกับ 2 เงื่อนไข Dim dblX As Double dblX = DAvg("[Freight]", "Orders","[ShipCountry] = 'UK' AND [ShippedDate] >= #1-1-96#") ตัวอย่างต่อมาเป็นการคำนวณโดยตัวแปร (strCountry) ในอากิวเมนต์ criteria หมายเหตุใช้เครื่องหมาย ( ) กับ expression แบบข้อความ และใช้ OR สำหรับ criteria แบบหลายเงื่อนไขในอากิวเมนต์ criteria เพื่อคัดเลือกข้อมูลที่สอดคล้องกับ 1 เงื่อนไขหรือ 2 เงื่อนไขที่กำหนด Dim dblX As Double, strCountry As String strCountry = "UK" dblX = DAvg("[Freight]", "Orders", "[ShipCountry] = '" & strCountry & "'OR [ShippedDate] >= #1-1-96#")
|
||||||||||||