กระทู้เก่าบอร์ด อ.Yeadram
1,229 6
URL.หัวข้อ /
URL
การ Qury ข้อมูล โดยรวมยอดเงิน แต่ต้องการให้
แสดงรายละเอียดทั้งหมด ของทุกรายการต้องทำอย่างไรครับ เช่น ผมมีรายการทั้งหมด 100 รายการ แต่มีรายการที่ต้องการ Qury อยู่ 5 รายการ
โดยมีเงื่อนไขว่า 5 รายการนี้ต้องรวมยอดขายแล้วมียอดเกิน 10 ล้านบาท และต้องแสดงรายละเอียดทั้งหมดของ 5 รายการนี้ที่เราเลือก
1. สมมุติผมมีข้อมูลทั้งหมด 100 Record 4 ฟิลด์ คือ
1.1 วันที่
1.2 รหัสลูกค้า
1.3 ชื่อลูกค้า
1.4 ยอดขาย
2. ต้องการดึงข้อมูลของลูกค้า ที่มียอดขายรวมกัน (ภายในวันนั้น ๆ )แล้วมีำจำนวนตั้งแต่ 10 ล้านบาท เป็นต้นไปมาแสดง ไม่ว่าจะมีกี่ Record ให้ดึงรายละเอียดทั้ง 4 ฟิลด์นั้นออกมาโชว์ สมมุติข้อมูลมี
วันที่ รหัส ชื่อ ยอดขาย
01-01-2013 001 นาย ก. 8,000,000
01-01-2013 001 นาย ก. 1,000,000
01-01-2013 001 นาย ก. 1,000,000
01-01-2013 002 นาย ข. 10,000,000
01-01-2013 003 นาย ค. 9,000,000
02-01-2013 001 นาย ก. 9,000,000
02-01-2013 003 นาย ค. 10,000,000
ผลลัพธ์ที่ต้องการ คือ
วันที่ รหัส ชื่อ ยอดขาย
01-01-2013 001 นาย ก. 8,000,000
01-01-2013 001 นาย ก. 1,000,000
01-01-2013 001 นาย ก. 1,000,000
01-01-2013 002 นาย ข. 10,000,000
02-01-2013 003 นาย ค. 10,000,000
รบกวนด้วยครับ ขอบคุณครับ
โดยมีเงื่อนไขว่า 5 รายการนี้ต้องรวมยอดขายแล้วมียอดเกิน 10 ล้านบาท และต้องแสดงรายละเอียดทั้งหมดของ 5 รายการนี้ที่เราเลือก
1. สมมุติผมมีข้อมูลทั้งหมด 100 Record 4 ฟิลด์ คือ
1.1 วันที่
1.2 รหัสลูกค้า
1.3 ชื่อลูกค้า
1.4 ยอดขาย
2. ต้องการดึงข้อมูลของลูกค้า ที่มียอดขายรวมกัน (ภายในวันนั้น ๆ )แล้วมีำจำนวนตั้งแต่ 10 ล้านบาท เป็นต้นไปมาแสดง ไม่ว่าจะมีกี่ Record ให้ดึงรายละเอียดทั้ง 4 ฟิลด์นั้นออกมาโชว์ สมมุติข้อมูลมี
วันที่ รหัส ชื่อ ยอดขาย
01-01-2013 001 นาย ก. 8,000,000
01-01-2013 001 นาย ก. 1,000,000
01-01-2013 001 นาย ก. 1,000,000
01-01-2013 002 นาย ข. 10,000,000
01-01-2013 003 นาย ค. 9,000,000
02-01-2013 001 นาย ก. 9,000,000
02-01-2013 003 นาย ค. 10,000,000
ผลลัพธ์ที่ต้องการ คือ
วันที่ รหัส ชื่อ ยอดขาย
01-01-2013 001 นาย ก. 8,000,000
01-01-2013 001 นาย ก. 1,000,000
01-01-2013 001 นาย ก. 1,000,000
01-01-2013 002 นาย ข. 10,000,000
02-01-2013 003 นาย ค. 10,000,000
รบกวนด้วยครับ ขอบคุณครับ
6 Reply in this Topic. Dispaly 1 pages and you are on page number 1
1 @R16919
ต้องขออภัยที่ตั้งกระทู้ใหม่ครับ เพราะกลับมาแล้วออกจะงง
2 @R16925
ใช้ซับคิวรี่รวมยอดขายตามเงื่อนไขวันที่ดูครับ แล้วจากนั้นค่อยกรองค่าที่ต้องการออกมาแสดงประมาณนี้
SELECT Table1.[วันที่], Table1.[รหัสลูกค้า], Table1.[ชื่อลูกค้า], Table1.ยอดขาย
FROM Table1
WHERE (SELECT sum([ยอดขาย]) From [Table1] as TTT Where TTT.[วันที่] = [Table1].[วันที่] and TTT.[ชื่อลูกค้า] = [Table1].[ชื่อลูกค้า])>=10000000;
ปรับใช้ดูครับ
SELECT Table1.[วันที่], Table1.[รหัสลูกค้า], Table1.[ชื่อลูกค้า], Table1.ยอดขาย
FROM Table1
WHERE (SELECT sum([ยอดขาย]) From [Table1] as TTT Where TTT.[วันที่] = [Table1].[วันที่] and TTT.[ชื่อลูกค้า] = [Table1].[ชื่อลูกค้า])>=10000000;
ปรับใช้ดูครับ
3 @R16927
ขอบคุณมากครับ เดี๋ยวลองทดสอบดูครับ ติดอะไรตรงไหนจะมารบกวนอีกครั้งครับ
4 @R16928
ทำ Query 2 ครั้ง ครั้งแรก GroupBy Date กับ Cus_Code และ GroupBySum ยอดขาย
ทำ Query ครั้งที่ 2 จาก Query แรก เชื่อมกับตารางเริ่มแรก เพื่อดึงข้อมูลมาแสดง
SELECT Test.Date, Test.Cus_Name, Sum(Test.Sales_Amount) AS SumOfSales_Amount
FROM Test
GROUP BY Test.Date, Test.Cus_Name
HAVING (((Sum(Test.Sales_Amount))>=10000000000));
SELECT Test.Date, Test.Cus_Code, Test.Cus_Name, Test.Sales_Amount
FROM Test INNER JOIN Q_Test1 ON (Test.Date = Q_Test1.Date) AND (Test.Cus_Name = Q_Test1.Cus_Name);
ทำ Query ครั้งที่ 2 จาก Query แรก เชื่อมกับตารางเริ่มแรก เพื่อดึงข้อมูลมาแสดง
SELECT Test.Date, Test.Cus_Name, Sum(Test.Sales_Amount) AS SumOfSales_Amount
FROM Test
GROUP BY Test.Date, Test.Cus_Name
HAVING (((Sum(Test.Sales_Amount))>=10000000000));
SELECT Test.Date, Test.Cus_Code, Test.Cus_Name, Test.Sales_Amount
FROM Test INNER JOIN Q_Test1 ON (Test.Date = Q_Test1.Date) AND (Test.Cus_Name = Q_Test1.Cus_Name);
5 @R16929
แสดงผลลัพธ์ จาก Query รูปข้างบน
6 @R16931
ขอบคุณ คุณ TTT และคุณ Saifar มากครับ
Time: 0.2611s