กระทู้เก่าบอร์ด อ.Yeadram
4,322 4
URL.หัวข้อ /
URL
ขอคิวรี่ข้อมูล ผลรวม ยมา ยกไป ครับ
คล้ายๆ กับ http://www.thai-access.com/yeadram_view.php?topic_id=1110&PagePosition=3
แต่ผมอยากได้ คิวรี่ ที่ช่อง ยกมา นำข้อมูล ยกไป มาแสดงที่ ยกมา ด้วยครับ
วัน รับ จ่าย
30/9/55 10
1/10/55 2
1/10/55 1
3/10/55 3
4/10/55 1
อยากได้ คิวรี่ ดังนี้ ครับ
วันที่ ยกมา รับ จ่าย ยกไป
1/10/55 10 2 1 11
3/10/55 11 3 14
4/10/55 14 1 13
ไปดูไฟล์ตัวอย่างที่ accboard@gmail.comเมล์โดนลบไปแล้วครับ
ขอบคุณครับ
แต่ผมอยากได้ คิวรี่ ที่ช่อง ยกมา นำข้อมูล ยกไป มาแสดงที่ ยกมา ด้วยครับ
วัน รับ จ่าย
30/9/55 10
1/10/55 2
1/10/55 1
3/10/55 3
4/10/55 1
อยากได้ คิวรี่ ดังนี้ ครับ
วันที่ ยกมา รับ จ่าย ยกไป
1/10/55 10 2 1 11
3/10/55 11 3 14
4/10/55 14 1 13
ไปดูไฟล์ตัวอย่างที่ accboard@gmail.comเมล์โดนลบไปแล้วครับ
ขอบคุณครับ
4 Reply in this Topic. Dispaly 1 pages and you are on page number 1
2 @R14230
หาคำตอบได้ด้วย SQL ประโยคเดียวดังนี้ครับ
Select
TransDate,
(
SELECT NZ(Sum(TransIn)) - NZ(Sum(TransOut))
FROM Trans As b
Where a.TransDate > b.TransDate
) As BeginBalance
, Sum(TransIn) As TIn, Sum(TransOut) As TOut
, BeginBalance + NZ(TIn) - NZ(TOut) As EndBalance
From
Trans As a
Where TransDate >= #2012/10/01#
Group By TransDate
Order By TransDate
แต่ต้องเตือนไว้ก่อนนะครับว่า SQL นี้เขียนตามข้อมูลที่เห็นเท่านั้น
ซึ่งการออกแบบตารางเพียงเท่านี้ และ ใช้ SQL แบบนี้ ถ้ามีข้อมูลจำนวนมาก จะทำให้ระบบทำงานช้ามาก
แนะนำว่าควรมี table ที่พักค่า อาจจะเป็น Monthly Summary และใช้ข้อมูลสิ้นเดือนเป็นค่าเริ่มต้นในการคำนวณยอดยกมา
Select
TransDate,
(
SELECT NZ(Sum(TransIn)) - NZ(Sum(TransOut))
FROM Trans As b
Where a.TransDate > b.TransDate
) As BeginBalance
, Sum(TransIn) As TIn, Sum(TransOut) As TOut
, BeginBalance + NZ(TIn) - NZ(TOut) As EndBalance
From
Trans As a
Where TransDate >= #2012/10/01#
Group By TransDate
Order By TransDate
แต่ต้องเตือนไว้ก่อนนะครับว่า SQL นี้เขียนตามข้อมูลที่เห็นเท่านั้น
ซึ่งการออกแบบตารางเพียงเท่านี้ และ ใช้ SQL แบบนี้ ถ้ามีข้อมูลจำนวนมาก จะทำให้ระบบทำงานช้ามาก
แนะนำว่าควรมี table ที่พักค่า อาจจะเป็น Monthly Summary และใช้ข้อมูลสิ้นเดือนเป็นค่าเริ่มต้นในการคำนวณยอดยกมา
3 @R14243
ยังไม่ได้นำของคุณ PichaiTC ไปทดลองนะครับ
จากคำถาม ของอาจารย์สันติสุข
-ยอดยกมาในวันแรกของเดือน คุณเก็บไว้ที่ไหนหรือได้ค่ามาอย่างไร
.....ยอดยกมา นำมาจาก ยอfเหลือจากคำนวณเดือนก่อนนะครับ
-ในวันเดียวกันมีการจ่ายออก/รับเข้าเพียงบรรทัดเดียว (เป็นเรคอร์ดเดียวที่เก็บผลสรุปของทั้งวันมาแล้ว) ใช่หรือไม่
....ตามจริง รับและจ่าย อยู่คนละบรรทัดครับ อยากรู้ว่า access ทำได้หรือปล่าว เพราะ จะนำไปทดลองปรับไปใช้กับรายงานการเงินครับ ที่มีเดบิต เคดิต รับอยู่ซ้ายมือ จ่ายอยู่ขวามือ ไม่รู้จะผมทำได้หรือปล่านะครับ เคยเห็นบางที่มีรายงานนี้ใช้ แต่เมล์ขอไม่ได้รับกลับมาเลย
ถ้าอาจารย์ พอมีตัวอย่างการเงิน ช่วยนำปฝากไว้ที่อีเมล์ accboard@gmail.com ได้ไหมครับ
ขอบคุณครับ
จากคำถาม ของอาจารย์สันติสุข
-ยอดยกมาในวันแรกของเดือน คุณเก็บไว้ที่ไหนหรือได้ค่ามาอย่างไร
.....ยอดยกมา นำมาจาก ยอfเหลือจากคำนวณเดือนก่อนนะครับ
-ในวันเดียวกันมีการจ่ายออก/รับเข้าเพียงบรรทัดเดียว (เป็นเรคอร์ดเดียวที่เก็บผลสรุปของทั้งวันมาแล้ว) ใช่หรือไม่
....ตามจริง รับและจ่าย อยู่คนละบรรทัดครับ อยากรู้ว่า access ทำได้หรือปล่าว เพราะ จะนำไปทดลองปรับไปใช้กับรายงานการเงินครับ ที่มีเดบิต เคดิต รับอยู่ซ้ายมือ จ่ายอยู่ขวามือ ไม่รู้จะผมทำได้หรือปล่านะครับ เคยเห็นบางที่มีรายงานนี้ใช้ แต่เมล์ขอไม่ได้รับกลับมาเลย
ถ้าอาจารย์ พอมีตัวอย่างการเงิน ช่วยนำปฝากไว้ที่อีเมล์ accboard@gmail.com ได้ไหมครับ
ขอบคุณครับ
4 @R14257
....ยอดยกมา นำมาจาก ยอfเหลือจากคำนวณเดือนก่อนนะครับ
แล้วยอดเหลือจากเดือนก่อน มีเก็บไว้ที่ไหนหรือไม่ ถ้าไม่มี ก็แปลว่าต้องย้อนกลับไปทีละเดือนก่อนหน้าเรื่อยๆใช่ไหมครับ สุดท้ายแล้วมันต้องมีจุดเริ่มต้น คุณมีเก็บยอดเริ่มต้นสต็อคไว้ที่ไหนบ้างมั๊ย ถ้าไม่มีเลย ก็แปลว่า เริ่มจากศูนย์ใช่มั๊ย ยอดปัจจุบันก็คือการบวกลบๆๆๆ ด้วยจำนวนรับเข้าและจ่ายออกตั้งแต่วันแรกที่เริ่มระบบในคอมพิวเตอร์จนถึงวันปัจจุบันใช่ไหมครับ
แล้วยอดเหลือจากเดือนก่อน มีเก็บไว้ที่ไหนหรือไม่ ถ้าไม่มี ก็แปลว่าต้องย้อนกลับไปทีละเดือนก่อนหน้าเรื่อยๆใช่ไหมครับ สุดท้ายแล้วมันต้องมีจุดเริ่มต้น คุณมีเก็บยอดเริ่มต้นสต็อคไว้ที่ไหนบ้างมั๊ย ถ้าไม่มีเลย ก็แปลว่า เริ่มจากศูนย์ใช่มั๊ย ยอดปัจจุบันก็คือการบวกลบๆๆๆ ด้วยจำนวนรับเข้าและจ่ายออกตั้งแต่วันแรกที่เริ่มระบบในคอมพิวเตอร์จนถึงวันปัจจุบันใช่ไหมครับ
Time: 0.2391s
-ในวันเดียวกันมีการจ่ายออก/รับเข้าเพียงบรรทัดเดียว (เป็นเรคอร์ดเดียวที่เก็บผลสรุปของทั้งวันมาแล้ว) ใช่หรือไม่