Thursday 27 July 2017

คำนวณ A เฉลี่ยเคลื่อนที่ ใน การเข้าถึง


ข้อมูลใหม่ ๆ จะถูกเพิ่มลงในตารางทุกวันจันทร์ถึงวันศุกร์โดยขึ้นอยู่กับการเปลี่ยนแปลงราคาตลาดของตลาดหุ้นในวันนั้น ความต้องการในปัจจุบันขึ้นอยู่กับฟิลด์ VOLUME ซึ่งแสดงปริมาณการซื้อขายสำหรับหุ้นแต่ละประเภทในแต่ละวัน ต้องการเพื่อให้ได้ค่าเฉลี่ยและปริมาณรวมสำหรับ 10,15 และ 30 วันสุดท้ายตามลำดับ วิธีการที่ใช้เป็นปัจจุบัน - ฉันได้สร้างคำค้นหา 9 ตอนนี้เพื่อให้ได้ผลลัพธ์ที่ต้องการแล้วอันดับแรกฉันได้สร้างแบบสอบถาม 3 แบบนี้เพื่อหาวันที่ 10,15 และ 30 ล่าสุดจากตารางปัจจุบัน qryLast10DaysStored qryLast15DaysStored qryLast30DaysStored จากนั้นผมได้สร้างทั้ง 3 คำสั่งในการรับค่าเฉลี่ยของแต่ละ qrySymbolAvgVolume10Days qrySymbolAvgVolume15Days qrySymbolAvgVolume30Days และจากนั้นผมได้สร้างทั้ง 3 คำสั่งในการรับผลรวมตามลำดับ qrySymbolTotalVolume10Days qrySymbolTotalVolume15Days qrySymbolTotalVolume30Days ปัญหาถูกต้องเผชิญด้วยวิธีหมุนเวียน - ตอนนี้ปัญหาของฉันเป็นที่ฉันได้สิ้นสุด up มีจำนวนมากดังนั้นการค้นหาที่แตกต่างกันในขณะที่ฉันต้องการได้รับเอาต์พุตเป็น Single Single Query ตามที่แสดงใน Snapshot ของ Excel Sheet จำเป็นต้องมี - มีวิธีการที่ฉันจะได้รับเขตข้อมูลที่จำเป็นเหล่านี้เป็น ONE SINGLE QUERY เพื่อที่ฉันจะได้ไม่ต้องมองเข้าไปในหลายสถานที่สำหรับเขตข้อมูลที่จำเป็นคนสามารถกรุณาบอกฉันว่าจะได้รับการสืบค้นทั้งหมดเหล่านี้แยกเป็นหนึ่ง - ก) ไม่ว่าจะโดยการนำเอาหรือเคลื่อนย้ายผลลัพธ์จากแบบสอบถามที่แยกต่างหากเหล่านี้ไปเป็นหนึ่ง B) หรือโดยการสร้างแบบสอบถามใหม่ซึ่งจะคำนวณเขตข้อมูลทั้งหมดเหล่านี้ภายในตัวเองเพื่อไม่ให้การสืบค้นแต่ละรายการแยกกันอีกต่อไป นี้จะเป็นทางออกที่ดีกว่าฉันคิดว่า หนึ่งคำชี้แจงเกี่ยวกับวันที่เพื่อนบางคนอาจคิดว่าทำไมฉันใช้วิธีการใช้ Top 10,15 และ 30 เพื่อรับค่าวันที่ 10,15 และ 30 ล่าสุด ทำไมไม่ใช้พีซีวันนี้เพื่อรับค่าเหล่านี้หรือใช้สิ่งต่างๆเช่น - (VOLUME, tbl-B, TimeStamp ระหว่างวันที่ () - 10 AND วันที่ ()) คำตอบคือฉันต้องใช้แบบสอบถามเพื่ออ่านวันที่จาก TIMESTAMP Field จากนั้นจะคำนวณตามเวลาที่กำหนดไว้ล่าสุดสำหรับ 10 วัน 15 วัน 30 วันสำหรับข้อมูลที่สามารถใช้ได้ในตารางโดยไม่ต้องระบุวันที่ปัจจุบัน ไม่ควรขึ้นอยู่กับวันที่ปัจจุบัน แต่อย่างใด หากมีวิธีใดที่ดีกว่าหรือมีประสิทธิภาพมากขึ้นในการสร้างข้อความค้นหาเหล่านี้โปรดสอน PS ฉันได้แนบฐานข้อมูลตัวอย่างซึ่งมีข้อมูลเป็นเวลา 6 เดือนตั้งแต่ 1 พฤศจิกายน 2011 ถึง 30 เมษายน 2012 และยังมีคำที่กล่าวมาข้างต้นอยู่ด้วย ฐานข้อมูลตัวอย่างที่มี QUERIES คุณมีคำสั่งแยกกันในการคำนวณ 10DayTotalVolume และ 10DayAvgVolume ฉันสงสัยว่าคุณสามารถคำนวณได้ทั้งแบบสอบถาม qry10DayVolumes อย่างไรก็ตามสิ่งนี้ทำให้ฉันสงสัยว่า 10DayAvgVolume อาจเป็นอะไรอื่นนอกจาก 10DayTotalVolume 10 ข้อพิจารณาที่คล้ายกันใช้กับค่าวันที่ 15 และ 30 วัน ในท้ายที่สุดผมคิดว่าคุณต้องการบางอย่างขึ้นอยู่กับจุดเริ่มต้นเช่นนี้: สมมติว่าคุณได้สร้าง qry15DayVolumes และ qry30DayVolumes ตามแนวทางที่ฉันแนะนำสำหรับ qry10DayVolumes ถ้าคุณต้องการลดจำนวนข้อความค้นหาคุณสามารถใช้ข้อความค้นหาย่อยสำหรับแต่ละ Query ที่บันทึกไว้ qryDayVolumes แต่ลองใช้วิธีนี้ก่อนเพื่อให้แน่ใจว่าตรรกะถูกต้อง ในแบบสอบถามที่สองด้านบนอาจมีปัญหาเนื่องจากชื่อฟิลด์ซึ่งเริ่มต้นด้วยตัวเลข ใส่ชื่อเหล่านั้นไว้ในวงเล็บเหลี่ยมหรือเปลี่ยนชื่อใหม่ใน qry10DayVolumes qry15DayVolumes และ qry30DayVolumes โดยใช้ชื่อนามแฝงซึ่งขึ้นต้นด้วยตัวอักษรแทนตัวเลข ฉันทดสอบแบบสอบถามตามที่เขียนข้างต้นกับ Upload. mdb ครั้งที่ 2 ที่คุณอัปโหลดและทำงานได้โดยไม่มีข้อผิดพลาดจาก Access 2007 นี่คือแถวแรกของชุดผลการค้นหาจากแบบสอบถามดังกล่าว: ตอบเมื่อ 24 ตุลาคม 12 ที่ 19: 20Calculating Total Totals and Moving ค่าเฉลี่ยใน Microsoft Access พร้อมด้วยสถิติการเข้าถึงโดยรวม Microsoft Access ไม่ได้นำเสนอคุณลักษณะที่มีอยู่ภายในเพื่อคำนวณผลรวมที่ใช้งานอยู่ จำนวนรวมที่เรียกใช้เป็นข้อมูลสรุปเกี่ยวกับชุดระเบียนที่กำหนด ตัวอย่างเช่นค่าเฉลี่ยเคลื่อนที่ 30 วันที่คุณต้องการคำนวณสำหรับแต่ละระเบียนโดยขึ้นอยู่กับค่าและ 29 ระเบียนก่อนหน้า โชคดีที่สถิติการเข้าถึงโดยรวมดำเนินการคำนวณรวมทั้งหมดในระเบียนของคุณ: ดำเนินการสรุปชุดระเบียนที่เคลื่อนที่เพื่อคำนวณผลรวมค่าเฉลี่ยต่ำสุดช่วงค่ามัธยฐานส่วนเบี่ยงเบนมาตรฐาน ฯลฯ วางค่าสรุปใน ในแหล่งข้อมูลของคุณวิเคราะห์ข้อมูลในตารางการเข้าถึงและแบบสอบถามของคุณ (รวมถึงข้อมูลที่เชื่อมโยงกัน) สนับสนุนการจัดกลุ่มค่าของฟิลด์เพื่อให้คุณสามารถวิเคราะห์ได้หลายครั้งในหนึ่งรอบการเรียกใช้ยอดรวมถูกเพิ่มลงในสถิติการเข้าถึงข้อมูลทั้งหมดสำหรับ Microsoft Access 2007 และ X.7 รุ่นสำหรับ Access 2003 และรุ่นก่อนหน้า ภาพรวมรวมเรียกใช้ยอดรวมคือการคำนวณจำนวนชุดของระเบียนผ่านตารางหรือแบบสอบถามของคุณ สร้างผลลัพธ์ได้ง่ายเช่นจำนวนเงินที่ใช้ค่าเฉลี่ยค่าต่ำสุดค่าสูงสุดมัธยฐาน ฯลฯ และวางไว้ในฟิลด์ข้อมูลของคุณ การคำนวณเหล่านี้มีอยู่: Average (Mean) Count การสังเกต Sum Sum Squared ค่าต่ำสุดสูงสุดค่าเบี่ยงเบนมาตรฐานค่าสัมประสิทธิ์ของความแปรปรวนค่าความผิดพลาดมาตรฐานโหมดมัธยฐานโหมดนับจำนวนรูปเรขาคณิตค่าเฉลี่ยค่าฮาร์มอนิก Mean Root Mean Square Skewness Kurtosis Standard ข้อผิดพลาดของ Skewness Standard ข้อผิดพลาดของ Kurtosis ถึงห้าเขตข้อมูล ในตารางของคุณสามารถปรับปรุงได้ในครั้งเดียว ตัวอย่างเช่นคุณอาจต้องการคำนวณค่าเฉลี่ยของระเบียน 10 รายการล่าสุด ค่าเฉลี่ยเคลื่อนที่นี้ขึ้นอยู่กับลำดับการจัดเรียงข้อมูลของคุณการคำนวณค่าเฉลี่ยสำหรับระเบียน 10 รายการและวางไว้ในฟิลด์ที่คุณระบุพร้อมกับบันทึก 10 สำหรับระเบียน 11 บันทึก 1 จะถูกละเว้นและการคำนวณจะทำสำหรับระเบียนที่ 2 ถึง 11 เป็นต้นคุณสมบัติอื่น ๆ คุณสามารถระบุฟิลด์กลุ่มเพื่อให้แต่ละกลุ่มมีผลรวมที่ใช้งานได้ทั้งหมด คุณลักษณะนี้ไม่ได้สร้างตารางแยกต่างหาก ผลลัพธ์จะอยู่ในฟิลด์ที่คุณระบุในแหล่งข้อมูลของคุณ การเลือกฟิลด์ผลรวมทั้งหมดฟิลด์การเลือกฟิลด์สำหรับยอดรวมที่ใช้ช่วยให้คุณสามารถระบุเขตข้อมูลที่ต้องการจัดเรียงตามและเขตข้อมูลเพื่อวางผลลัพธ์: ฟิลด์กลุ่มทำให้คุณสามารถสร้างชุดการวิเคราะห์แยกต่างหากสำหรับการรวมกันของค่าที่ไม่ซ้ำระหว่างกลุ่มแต่ละฟิลด์ ฟิลด์การเรียงลำดับจะกำหนดลำดับการจัดเรียงของระเบียนของคุณเพื่อคำนวณค่าที่กำลังทำงาน ระบุฟิลด์การจัดเรียงอย่างน้อยหนึ่งรายการ ซึ่งอาจรวมถึงข้อมูลที่คุณกำลังคำนวณอยู่ ฟิลด์จะเรียงตามลำดับจากน้อยไปมาก ระบุถึงห้าช่องเพื่ออัปเดตด้วยผลรวมของคุณ ตรวจสอบให้แน่ใจว่าฟิลด์นี้เป็นประเภทข้อมูลที่สามารถเก็บข้อมูลที่คุณต้องการนำมาใส่ได้ ตัวอย่างเช่นควรเพิ่มคู่ถ้าคุณคาดว่าจะเก็บค่าต่างๆเช่นค่าเฉลี่ย (ค่าเฉลี่ย) ความแปรปรวน ฯลฯ การเรียกใช้ตัวเลือกทั้งหมดหลังจากเลือกฟิลด์แล้วจะมีตัวเลือกจำนวนเงินที่ใช้งานเสร็จสมบูรณ์: ฟิลด์ที่จะวิเคราะห์ระบุฟิลด์ที่คำนวณขึ้นอยู่กับ ฟิลด์นี้อาจเป็นฟิลด์ที่ระบุเป็นฟิลด์จัดเรียง ตัวอย่างเช่นคุณอาจต้องการคำนวณค่าเฉลี่ยที่ใช้โดยพิจารณาจากยอดขายเรียงตามลำดับจากน้อยไปมาก จำนวนเร็กคอร์ดที่จะคำนวณรวมทั้งหมดระบุจำนวนระเบียนในการย้ายทั้งหมด ถ้าคุณระบุ 0 ผลรวมจะถูกคำนวณสำหรับทุกระเบียน หากคุณป้อนหมายเลขเฉพาะการคำนวณจะขึ้นอยู่กับจำนวนระเบียนนั้น ๆ ระเบียนแรกจะถูกลดลงเมื่อมีการเพิ่มข้อมูลถัดไปและการคำนวณจะขึ้นอยู่กับชุดระเบียนที่ย้ายนี้ ชุดเริ่มต้นของระเบียนถ้าคุณระบุจำนวนระเบียนที่จะคำนวณผลรวมรวมกันมีตัวเลือกเพื่อกำหนดสิ่งที่จะเกิดขึ้นก่อนที่คุณจะเข้าถึงระเบียนจำนวนดังกล่าว คุณควรข้ามหรือคำนวณผลรวมทั้งหมดโดยพิจารณาจากระเบียนที่ประมวลผล เลือก Calculate เพื่อดูผลรวมที่ใช้ไม่ว่าจะมีจำนวนระเบียนที่เคลื่อนที่หรือไม่ เลือกปล่อยให้ว่างไว้เพื่อให้มีผลรวมทั้งหมดเมื่อจำนวนระเบียนที่ระบุถึงได้โดยไม่มีการคำนวณใด ๆ สำหรับระเบียนจำนวนน้อย ประเภทการคำนวณมีหลายประเภทการคำนวณที่ใช้ได้ ระบุช่องที่คุณต้องการสำหรับแต่ละเขตข้อมูลการอัพเดทที่คุณเลือก ผลรวมผลรวมของผลรวมของผลรวมของการเรียกใช้จะอยู่ในเขตข้อมูลการอัพเดทที่ระบุ: ตัวอย่างของจำนวนเงินที่เรียกใช้ทั้งหมดที่อยู่ในสี่ฟิลด์ด้านขวาของตาราง Microsoft Access ในตัวอย่างนี้ข้อมูลถูกจัดเรียงตามวันที่และรหัสคำสั่งซื้อพร้อมกับคำนวณยอดขาย สนาม สังเกตค่าในฟิลด์ RunningCount เพิ่มจาก 1 เป็น 10 เมื่อถึง 10 จะยังคงอยู่ที่ 10 เนื่องจากเป็นจำนวนระเบียนสูงสุดในการย้ายทั้งหมด ฟิลด์ RunningTotal แสดงยอดขายผ่านระเบียนในชุดระเบียนที่ย้าย เนื่องจากตัวเลือกในการคำนวณค่าสำหรับชุดระเบียนเริ่มต้นถูกเลือก (ก่อนที่จะถึง 10 ระเบียน) ค่าจะปรากฏขึ้น มิฉะนั้นระเบียน 9 รายการแรกจะมีค่าเป็น null ตัวช่วยสร้างการโต้ตอบและ VBA Programmatic Interfaces สถิติการเข้าถึงโดยรวมช่วยให้คุณสามารถสร้างการคำนวณของคุณได้โดยใช้อินเทอร์เฟซตัวช่วยสร้างเพื่อเลือกแหล่งข้อมูลเขตข้อมูลและการวิเคราะห์โดยไม่ต้องเขียนโปรแกรม หลังจากที่คุณระบุการเลือกแล้วระบบจะบันทึกเป็นภาพจำลองในฐานข้อมูลของคุณโดยอัตโนมัติเพื่อให้คุณสามารถใช้งานได้อีกครั้งในอนาคตเมื่อข้อมูลของคุณมีการเปลี่ยนแปลง ฟังก์ชันสถิติ VBA มีให้เพื่อให้คุณสามารถสร้างผลลัพธ์เหล่านี้จากโค้ด คุณสามารถเรียกใช้สถานการณ์ใด ๆ ที่บันทึกไว้โดยการเรียกกระบวนงานเดียวในไลบรารี Total Access Statistics VBA ไลบรารีนี้มีใบอนุญาตรันไทม์ฟรีค่าภาคหลวงเพื่อให้คุณสามารถรวมฐานข้อมูลเข้ากับฐานข้อมูล Access ของคุณและแจกจ่ายให้กับเจ้าของที่ไม่ใช่เจ้าของสถิติการเข้าชมทั้งหมด เรียกใช้ฟังก์ชันจากปุ่ม OnClick เหตุการณ์หรือกระบวนการอื่น ๆ และผลลัพธ์จะถูกสร้างขึ้นสำหรับคุณ คุณยังสามารถซ่อนอินเทอร์เฟซผู้ใช้ภายในเพื่อให้ผู้ใช้ของคุณไม่ทราบว่าสถิติการเข้าถึงข้อมูลทั้งหมดกำลังทำงานอยู่ ข้อมูลเพิ่มเติมเกี่ยวกับการคำนวณที่มีอยู่ในสถิติการเข้าถึงทั้งหมดนี่คือแหล่งข้อมูลเพิ่มเติมและรายละเอียดเกี่ยวกับการวิเคราะห์ข้อมูลบางอย่างที่คุณสามารถดำเนินการได้ในข้อมูล Microsoft Access ของคุณด้วยสถิติการเข้าถึงโดยรวม: การคำนวณกระแสเงินสดทางการเงินใช้เงินสดลด กระแสเงินสดและอัตราดอกเบี้ยในการสร้างมูลค่าปัจจุบัน (NPV) มูลค่าปัจจุบัน (PV) มูลค่าในอนาคต (FV) อัตราผลตอบแทนภายใน (IRR) อัตราผลตอบแทนภายในที่ปรับเปลี่ยน (MIRR) สำหรับการชำระเงินและใบเสร็จรับเงินตามงวดและวันที่ การคำนวณเปอร์เซ็นต์การคำนวณเปอร์เซนต์ต่างๆ: มัธยฐาน quartiles quintiles octiles, deciles, percentiles, ทุกๆ X.5 percentile และวางไว้ในตารางหรืออัพเดตฟิลด์ที่มีอยู่แล้วด้วยค่า percentile records การคำนวณยอดรวมและค่าเฉลี่ยเคลื่อนที่สรุปชุดข้อมูลที่เคลื่อนที่เพื่อคำนวณจำนวนเงินที่ใช้งานค่าเฉลี่ยเคลื่อนที่ค่าต่ำสุดค่าสูงสุดช่วงค่ามัธยฐานส่วนเบี่ยงเบนมาตรฐานเป็นต้น Data Normalization (Data Transpose) แปลงข้อมูลที่ไม่เป็นไปตามข้อกำหนดเพื่อให้คุณสามารถวิเคราะห์และดูแลรักษาได้ง่าย มัน. การถดถอยพหุคูณแบบหลายตัวแปรและพหุนามด้วยการคำนวณสัมประสิทธิ์สมการ ANOVA และ Crosstabs ตารางที่ตกค้างและ Chi-Square ขั้นสูงข้ามแท็บด้วยเปอร์เซ็นต์ของแถวคอลัมน์และผลรวมที่แสดงเป็นระเบียนหรือคอลัมน์การคำนวณเฉลี่ยการคำนวณค่าเฉลี่ยเคลื่อนที่การคำนวณเฉลี่ยการคำนวณค่าเฉลี่ยเคลื่อนที่ฉันพยายาม เพื่อคำนวณค่าเฉลี่ยเคลื่อนที่สำหรับชุดข้อมูล ฉันต้องการสร้างค่าเฉลี่ยเคลื่อนที่สำหรับแต่ละจุดภายในข้อมูลเพื่อที่จะแสดงในกราฟ ต่อไปนี้เป็นตัวอย่างจาก MS Support ฉันได้ตามจดหมาย แต่ฉันไม่ได้ให้ค่าเฉลี่ยเคลื่อนที่ ซ้ำจุดข้อมูลเดียวกันซ้ำแล้วซ้ำอีก (จุดข้อมูลแรก) ดังนั้นฉันไม่เชื่อว่าการทำงานคือการหา startdate ใน MyRST. Seek line ดังนั้นเพียงแค่ส่งกลับจุดข้อมูลแรก สุดท้าย (อาจจะทำให้ง่ายมาก) ฉันสับสนเกี่ยวกับวิธีการทำงานของดัชนี ฉันคิดว่าคุณสามารถมีคีย์หลักหนึ่งได้ แต่เห็นได้ชัดว่าคุณสามารถสร้างข้อ จำกัด หลายฟิลด์ได้ ฉันได้พยายามทำสิ่งนี้กับแบบสอบถามเกี่ยวกับคำจำกัดความต่อไปนี้: ALTER TABLE Table1 เพิ่ม CONDORD NoDupes UNIQUE (CurrencyType, TransactionDate) ขออภัยเกี่ยวกับความยาวของโพสต์นี้ ขอขอบคุณสำหรับความช่วยเหลือของคุณ ฟังก์ชันตัวอย่างต่อไปนี้คำนวณค่าเฉลี่ยเคลื่อนที่โดยขึ้นอยู่กับตารางที่มีคีย์หลักของฟิลด์หลายฟิลด์ ใช้ค่าเงินตราต่างประเทศประจำสัปดาห์สำหรับตัวอย่างนี้ เมื่อต้องการสร้างฟังก์ชันตัวอย่างทำตามขั้นตอนเหล่านี้: สร้างตารางต่อไปนี้และบันทึกเป็นตารางที่ 1: ตาราง: Table1 --------------------------- -------------- ชื่อฟิลด์: CurrencyType ประเภทข้อมูลคีย์หลัก: ขนาดฟิลด์ข้อความ: 25 ชื่อฟิลด์: TransactionDate คีย์ข้อมูลหลักประเภทข้อมูล: DateTime รูปแบบ: Short Date ชื่อฟิลด์: Rate Data Type: Currency Decimal Places: 4 ดูตารางในมุมมองแผ่นข้อมูลและป้อนค่าต่อไปนี้: CurrencyType TransactionDate Rate ------------------------------- ------------- เยน 8693 0.0079 เยน 81393 0.0082 เยน 82093 0.0085 เยน 82793 0.0088 เยน 9393 0.0091 เครื่องหมาย 8693 0.5600 เครื่องหมาย 81393 0.5700 เครื่องหมาย 82093 0.5800 เครื่องหมาย 82793 0.5900 เครื่องหมาย 9393 0.6000 เปิดโมดูลใหม่และพิมพ์ ฟังก์ชันต่อไปนี้: ฟังก์ชัน MAvgs (Periods As Integer, StartDate, TypeName) Dim MyDB เป็นฐานข้อมูล MyRST As Recordset, MySum As Double Dim i, x ตั้ง MyDB CurrentDb () ตั้ง MyRST MyDB. OpenRecordset (Table1) On Error ต่อไป MyRST. Index ช่วงเวลา PrimaryKey x - 1 เก็บ ReDim (x) MySum 0 สำหรับ i 0 ถึง x MyRST. MoveFirst MyRST. Seek, TypeName, StartDate ตัวแปรสองตัวนี้ควรเป็นลำดับเดียวกับฟิลด์คีย์หลักในตารางของคุณ Store (i) MyRSTRate ถ้า i lt x จากนั้น StartDate StartDate - 7 7 ที่นี่สมมติข้อมูลรายสัปดาห์ 1 สำหรับข้อมูลรายวัน ถ้า StartDate 8693 แล้ว MAvgs Null: ออกจากฟังก์ชัน 8693 จะถูกแทนที่ด้วยวันที่เก่าที่สุดของข้อมูลในตารางของคุณ MySum Store (i) MySum ต่อไป i MAvgs MySum Periods MyRST. Close End Function สร้างแบบสอบถามต่อไปนี้ขึ้นอยู่กับตาราง Table1: Query: Query1 --------------------- ---------------------------------- ฟิลด์: ฟิลด์สกุลเงิน: เขตข้อมูลรายการ: ฟิลด์อัตรา: Expr1: MAvgs (3 , TransactionDate, CurrencyType) หมายเหตุ: แบบสอบถามนี้จะสร้างค่าเฉลี่ยเคลื่อนที่ของข้อมูลอัตราสามสัปดาห์ หากต้องการคำนวณค่าเฉลี่ยเคลื่อนที่ที่ยาวหรือสั้นให้เปลี่ยนหมายเลข 3 ในคอลัมน์ Expr1 แบบสอบถามเป็นค่าที่คุณต้องการคำนวณ เรียกใช้แบบสอบถาม โปรดทราบว่าคุณเห็นค่าเฉลี่ยเคลื่อนที่สามสัปดาห์ต่อไปนี้สำหรับแต่ละสกุลเงิน ค่า Null บ่งชี้ว่าไม่มีค่าก่อนหน้านี้เพียงพอที่จะคำนวณค่าเฉลี่ยของสัปดาห์ที่ผ่านมา CurrencyType TransactionDate อัตรา Expr1 Mark 080693 0.5600 เครื่องหมาย 081393 0.5700 เครื่องหมาย 082093 0.5800 0.57 เครื่องหมาย 082793 0.5900 0.58 เครื่องหมาย 090393 0.6000 0.59 เยน 080693 0.0079 เยน 081393 0.0082 เยน 082093 0.0085 0.0082 เยน 082793 0.0088 0.0085 เยน 090393 0.0091 0.0088 RE: การคำนวณค่าเฉลี่ย dhookom (โปรแกรมเมอร์) 28 10 มิถุนายน 21:15 รหัสนี้ใช้ไม่ได้แค่ไหนมันไม่ได้ใช้ DAO อย่างชัดเจนและไม่ได้พูดถึงว่าเคยทำงานกับตารางที่เชื่อมโยงอยู่ Dim MyDB เป็น DAO. Database, MyRST เป็น DAO. Recordset ฉันจะใช้แบบสอบถามย่อยมากกว่าชุดระเบียน อาจมีลักษณะดังนี้: SELECT CurrencyType, TransactionDate, Rate, (SELECT Avg (Rate) จาก Table1 B WHERE A. CurrencyType B. CurrencyType และ A. TransactionDate ระหว่าง B. TransactionDate - 14 และ B. TransactionDate) จาก Table1 A RE: Moving การคำนวณเฉลี่ยที่สมบูรณ์แบบจริงๆ ผมขอขอบคุณความช่วยเหลือของคุณ. อย่างไรก็ตามรหัสที่คุณให้กำลังคำนวณค่าเฉลี่ยเคลื่อนที่ไปข้างหน้า 14 วัน (การย้ายค่าเฉลี่ยเคลื่อนที่ในระเบียนสำหรับวันที่ 1 ของค่าเฉลี่ยซึ่งฉันต้องการให้เป็นค่าเฉลี่ยย้อนกลับไปอยู่ในบันทึก 14) ฉันเปลี่ยนเพียงเล็กน้อยต่อไปนี้และดูเหมือนจะทำงาน SELECT A. CurrencyType, A. TransactionDate, A. Rate, (เลือกเฉลี่ย (อัตรา) จากตารางที่ 1 B WHERE A. CurrencyType B. CurrencyType และ B. TransactionDate ระหว่างวันที่ A. TransactionDate - 14 AND A. TransactionDate) AS Expr1 จากตารางที่ 1 AS A คุณสามารถดูสิ่งที่ฉันได้ทำคือแลก A สำหรับ B ในข้อที่ นี่เป็นความช่วยเหลือที่ยิ่งใหญ่อย่างมากสำหรับผมและผมก็ชื่นชมจริงๆ ฉันไม่เคยเห็นการเขียนโค้ดแบบนี้มาก่อนและสุจริตฉันไม่เข้าใจจริงๆ ฉันไม่รู้ว่า SQL เข้าใจสิ่งที่ B และ A ได้อย่างไร ฉันสมมติว่าพวกเขากำลังสร้างการอ้างอิงอื่นใน Table1 ถ้าคุณสามารถให้คำแนะนำฉันจะขอบคุณมัน นอกจากนี้อาจมีการอ้างอิงถึงเนื้อหาบางอย่างที่ฉันสามารถมองไปที่ฉันรู้สึกตื่นเต้นมากที่ได้เรียนรู้อะไรใหม่ ๆ เกี่ยวกับ VBASQL และขอขอบคุณสำหรับความช่วยเหลือของคุณ RE: การคำนวณค่าเฉลี่ยเคลื่อนที่ PHV (MIS) 29 Jun 10 12:22 เข้าใจว่า B และ A พวกเขาจะเป็นนามแฝง RE RE: การคำนวณโดยเฉลี่ยที่สูงขึ้นขอบคุณ, PHV RE: การคำนวณค่าเฉลี่ยโดยเฉลี่ย joshery420 (TechnicalUser) 6 Jul 10 15:06 วุ้ยไม่เคยมอง SQL มาก่อน มีประโยชน์อย่างยิ่ง Im พยายามรับรหัสนี้ทำงานในชุดข้อมูลของฉันเองและ Im ติดปัญหาเฉพาะหนึ่ง. pd2004 ไม่แน่ใจว่ารหัส subquery ใหม่ทำงานเหมือนรหัส VBA เก่าของคุณหรือไม่ แต่ข้อมูลของฉันยังคงแสดงค่าเฉลี่ยโดยเฉลี่ยแม้ว่าจะมีวันที่เพียงพอที่จะสร้างความยาวเฉลี่ยดังกล่าว เช่น. หาก Im มีค่าเฉลี่ยการกลิ้ง 7 วันวันที่ 1 แสดงข้อมูลเดียวกันในคอลัมน์ 7DayAvg ตามที่ปรากฏในคอลัมน์ข้อมูลรายวัน วันที่ 2 จะแสดงค่าเฉลี่ยของวันที่ 1 และ 2 ฯลฯ อย่าให้คนใดคนหนึ่งของคุณรู้จักวิธีแก้ไขปัญหานี้โดยบังเอิญนอกจากนี้ขอขอบคุณสำหรับเคล็ดลับ PHV ที่ยอดเยี่ยม RE: การคำนวณค่าเฉลี่ยโดยเฉลี่ย joshery420 (TechnicalUser) 6 Jul 10 15:08 Woops หมายถึงต้องขอบคุณ dhookom สำหรับเคล็ดลับรหัสไม่ใช่ PHV แต่เดี๋ยวก่อนขอบคุณทั้งสองคน XD RE: การคำนวณค่าเฉลี่ยโดยเฉลี่ยฉันจะปล่อยให้ทางออกที่ดีที่สุดสำหรับมืออาชีพที่นี่ แต่คุณสามารถดูได้ในบทความต้นฉบับของฉันว่าตัวอย่างความช่วยเหลือของ Microsoft พยายามที่จะจัดการกับสิ่งนั้นอย่างไร นี่คือรหัส: ถ้า StartDate lt 8693 จากนั้น MAvgs Null: ออกจากฟังก์ชัน 8693 จะถูกแทนที่ด้วยวันที่เร็วที่สุดของข้อมูลในตารางของคุณ พวกเขาเพิ่งออกจากฟังก์ชันถ้าวันที่ไม่เหมาะกับเกณฑ์ ฉันไม่ทราบว่าคุณสามารถรวมสิ่งที่ต้องการที่เป็นรหัสนามแฝงให้โดย dhookem ฉันไม่ชอบวิธีการจัดการปัญหานี้และฉันสงสัยว่า dhookem จะให้โซลูชันที่สง่างามมากขึ้น สำหรับจุดประสงค์ของฉันปัญหาที่คุณกำลังอธิบายไม่ใช่เรื่องที่น่าสนใจ แต่ฉันจะสนใจที่จะได้เห็นแนวทางใด ๆ RE: การคำนวณค่าเฉลี่ย dhookom (Programmer) 6 Jul 10 17:05 คุณสามารถลองใช้ IIf () เพื่อทดสอบจำนวนของระเบียน ข้อควรระวัง: รหัส Notepad ที่ไม่ผ่านการทดสอบดังต่อไปนี้: SELECT A. CurrencyType, A. TransactionDate, A. Rate, IIF ((SELECT Count (Rate) จากตารางที่ 1 C โดยที่ C: CurrencyType C. CurrencyType และ C. TransactionDate A. TransactionDate - 14 และ A. TransactionDate) 7, (SELECT Avg (Rate) จาก Table1 B WHERE A. CurrencyType B. CurrencyType และ B. TransactionDate ระหว่างวันที่ A. TransactionDate - 14 และ A. TransactionDate), Null) AS Expr1 จากตารางที่ 1 AS A RE: การคำนวณค่าเฉลี่ยเคลื่อนที่ 9 0.2 การคำนวณค่าเฉลี่ยเคลื่อนที่คุณสามารถใช้คำสั่ง SELECT ดังตัวอย่างต่อไปนี้เพื่อคำนวณค่าเฉลี่ยเคลื่อนที่: คำสั่งนี้จะสแกนตารางที่มีค่ารายวันและใช้แบบสอบถามที่ซ้อนกันเพื่อคำนวณค่าเฉลี่ยโดยเฉลี่ย เจ็ดวันก่อนหน้า คุณสามารถปรับช่วงนี้เพื่อเปลี่ยนวิธีการคำนวณค่าเฉลี่ยเคลื่อนที่ ตัวอย่างเช่นคุณสามารถใช้ข้อของ Where ในการคำนวณค่าเฉลี่ยเคลื่อนที่ได้เหนือหน้าต่าง 14 วันโดยมีวันที่ปัจจุบันอยู่ตรงกลาง: Discussion ค่าเฉลี่ยเคลื่อนที่จะใช้เพื่อให้ข้อมูล data-series เรียบขึ้นซึ่งมีการกระโดดข้ามระหว่างการสังเกตอย่างเห็นได้ชัด ช่วงเวลาสำหรับการสังเกตอาจเป็นวัน (เช่นเดียวกับในตัวอย่างก่อนหน้า) เดือนหรือปี หรือคุณสามารถใช้คอลัมน์ AutoNumber ง่ายๆแทนฟิลด์วันที่เนื่องจากค่าในคอลัมน์นั้นจะเพิ่มขึ้นตามช่วงเวลา ช่วงที่ใช้ในการคํานวณค่าเฉลี่ยเคลื่อนที่จะใหญ่ขึ้นเรื่อย ๆ ในรูปที่ 9-3 คุณสามารถดูว่าค่าเฉลี่ยเคลื่อนที่จะทำให้การสังเกตการณ์ของแต่ละบุคคลมีราคาสต็อกได้อย่างไร รูปที่ 9-3 ใช้ค่าเฉลี่ยเคลื่อนที่เพื่อให้ชุดค่าต่างๆเรียบ

No comments:

Post a Comment