จะหาค่าหมายเลขนัมเบอร์สูงสุดของบิล โดยค้นหาจากรหัสนักเรียน จะเขียน sql อย่างไรครับ
กระทู้เก่าบอร์ด อ.สุภาพ ไชยา

 313   2
URL.หัวข้อ / URL
จะหาค่าหมายเลขนัมเบอร์สูงสุดของบิล โดยค้นหาจากรหัสนักเรียน จะเขียน sql อย่างไรครับ

ต้องการหา ค่าสูงสุดของ payedlist_id โดยมีเงื่อนไขรหัสนักเรียนที่อยู่บนเท็กบอกซ์ st_id อยู่บนเมนฟอร์ม

โดยกำหนดเมื่อคลิกแล้วให้มี

Dim st_idsearch as long
st_idsearch =[forms]![m_main]![st_id]
Dim bill_no as long
bill= ค่านัมเบอร์สูงสุดของบิล ( เขียนโค๊ดยังไงครับ)
msgbox " บิลครั้งล่าสุดที่ค้างชำระของนักเรียนคือ "& bill

จาก sql ด้านล่างครับ (ผมสร้างจาก query)
SELECT payedlist_st.st_id, payedlist_st.payedlist_id, payedlist_duty.chk
FROM (std INNER JOIN payedlist_st ON std.st_id = payedlist_st.st_id) INNER JOIN payedlist_duty ON payedlist_st.payedlist_id = payedlist_duty.payedlist_id
WHERE (((payedlist_st.st_id)=[forms]![m_main]![st_id]) AND ((payedlist_duty.chk)=False));

ปล. ไม่อยาก Dmax ครับเพราะผมต้องใช้ Nz เข้ามาช่วยแต่เงื่อนไขมันเยอะมากมันทำงานได้ตรงเป็นบางเงื่อนไขครับ (ผมใช้ไม่เป็น)

2 Reply in this Topic. Dispaly 1 pages and you are on page number 1

1 @R03001
ให้ใช้ Query ที่ได้มาแหล่ะครับ แต่ไม่ต้องใส่เงื่อนไข st_id ให้ละไว้ จะได้

SELECT payedlist_st.st_id, payedlist_st.payedlist_id, payedlist_duty.chk
FROM (std INNER JOIN payedlist_st ON std.st_id = payedlist_st.st_id) INNER JOIN payedlist_duty ON payedlist_st.payedlist_id = payedlist_duty.payedlist_id
WHERE payedlist_duty.chk=False;

บันทึกเป็น qryTest

จากนั้นก็ใช้ DMax() กับ qryTest ได้

bill= DMax("[payedlist_id]","qryTest", "[st_id]=" & [forms]![m_main]![st_id])
msgbox " บิลครั้งล่าสุดที่ค้างชำระของนักเรียนคือ "& bill
*** Edited by Supap Chaiya *** 21/5/2546 8:51:47
2 @R03025
ขอบคุณครับอาจารย์ตอนนี้ใช้ได้แล้วครับ
@ ประกาศใช้งานเว็บบอร์ดใหม่ => บอร์ดเรียนรู้ Access สำหรับคนไทย
แล้วจะใส่ลิ้งอ้างอิงมาที่โพสต์เก่านี้หรือไม่ก็ตามสะดวกครับ
Time: 0.1142s