ผลรวมสะสมประจำเดือน โดยมีเงื่อนไข



0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้

01 พ.ค. 61 , 09:52:17
อ่าน 678 ครั้ง

andersonpokhao

  • สมาชิกไท.Access
  • กระทู้: 5

  • ขอบคุณ ไท.Access

    • ดูรายละเอียด

query เดิม


สิ่งที่ต้องการ คือ
1. เดือน ต้องเรียงกัน ดังนี้ครับ
        มกราคม
        กุมภาพันธ์
        เมษายน
           .
           .
        ธันวาคม
2.รวมบัญชีแต่ละบัญชี สะสมมาเรื่อยๆ ครับ เช่นนี้ครับ

=============================================================
วันที่b by month   ชื่อบัญชี1b    sumofจำนวนเงินเดบิต   sumofจำนวนเงินเครดิต     รวมสะสมเดบิต     รวมสะสมเครดิต
=============================================================
กุมภาพันธ์         เงินฝากธนาคาร          30,500                        0                        30,500                0
กุมภาพันธ์         เงินรับฝากผ่าน               0                           400                          0                   400
กุมภาพันธ์         ใบสำคัญค้างจ่าย            0                         40,200                        0                 40,200
มิถุนายน           ค้างรับกรมบัญชี          20,000                         0                       20,000                 0
มิถุนายน           เงินช่วยการศึกษา        20,000                         0                       20,000                 0
มิถุนายน           ใบสำคัญค้างจ่าย             0                        20,000                         0                60,200
    .
    .
    .

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

 

07 พ.ค. 61 , 21:18:46
ตอบกลับ #1

ปิ่นณรงค์

> ผลรวมสะสมประจำเดือน โดยมีเงื่อนไข
« ตอบกลับ #1 เมื่อ: 07 พ.ค. 61 , 21:18:46 »

ตัวอย่างนี้ใช้วิธีการ Running Sum นะครับ
ตัวอย่างคำสั่ง SQL
โค๊ด: [Select]
SELECT Table1.Name, Format([Date],"mmmm yyyy") AS OnDate, Table1.SumofDebit, Table1.SumofCradit, (SELECT Sum(a2.SumofDebit) FROM Table1 AS a2
                WHERE
                a2.Name = Table1.Name
            AND a2.Date <= Table1.Date
    ) AS รวมสะสมเดบิต, (SELECT Sum(a3.SumofCradit) FROM Table1 AS a3
                WHERE
                a3.Name = Table1.Name
            AND a3.Date <= Table1.Date
    ) AS รวมสะสมเครดิต, Table1.Date AS จัดลำดับเดือน
FROM Table1
ORDER BY Table1.Date;

ลองดูนะครับว่าตรงแบบที่ต้องการหรือเปล่า
ตัวอย่างด้านล่าง

« แก้ไขครั้งสุดท้าย: 08 พ.ค. 61 , 01:57:11 โดย Newbies »
:love: :grin:
 
โพสต์นี้ได้รับคำขอบคุณจาก: sjs


บอร์ดเรียนรู้ Access สำหรับคนไทย