Query นับสมาชิกเข้าออก
กระทู้เก่าบอร์ด อ.Yeadram

 1,140   8
URL.หัวข้อ / URL
Query นับสมาชิกเข้าออก

จากตาราง
รหัสสมาชิก          วันที่เข้า        วันที่ออก
       1             11/12/2555
       2                 1/1/2556       6/3/2556
       3                 7/1/2556
       4                 9/1/2556       4/2/2556
       5               11/2/2556
       6               12/3/2556
       7               11/4/2556       5/5/2556
       8                 1/5/2556     16/5/2556
       9               17/6/2556       7/7/2556
ถ้าเราเลือกช่วงเวลา วันที่ 1/2/2556 ถึง 30/4/2556 มีคนเข้ากี่คน(3คน)
ออกกี่คน(1 คน) มีสมาชิกทั้งหมกกี่คน(5 คน) เราจะเขียน Query ยังงัยครับ

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

1 @R15927
select count(รหัสสมาชิก) from .... where วันที่เข้า between #วันที่เริ่ม# and #วันที่สิ้นสุด#

หมายเหตุ : ถ้าเราป้อนใน SQL View วันที่ต้องเป็น คศ. อยู่ในรูปแบบ เดือน/วัน/ปี หรือไม่ก็ต้องอยู่ในรูปแบบที่แปลได้แน่นอนว่าเป็นวันและเดือนอะไร เช่น วันที่ 1 เดือนกุมภาพันธ์ ต้องเขียน #02/01/2013# หรือ #01-Feb-2013# แต่เมื่อเรากลับไปดูใน Design View มันจะแปลงออกมาในรูปแบบที่กำหนดใน Control Panel - Regional and Language Setting
2 @R15928
อาจารย์ครับ วันที่เข้า วันที่ออก มันอยู่คนละฟิลด์กัน ถ้า Where แบบนั้น
มันก็จะนับคนออกมาด้วยครับ
ปัญหามีอีกคือ ถ้าเลือกช่วงที่อยู่ระหว่าง ที่คนยังไม่ลาออก แต่คนนั้นลาออกแล้ว เช่น
ช่วงเวลา วันที่ 1/2/2556 ถึง 30/4/2556 มีคนเข้ากี่คน(3คน)
ออกกี่คน(ยังไม่ลาออก ไปลาออก วันที่ 5/5/2556) มีสมาชิกทั้งหมดกี่คน(5 คน)

โจทย์ที่ตั้งผิดตรงลาออกครับ ขอโทษด้วย
3 @R15929
1. ต้องการผลลัพธ์ออกมาในคิวรี่เดียวกันเลยหรือไม่ ตามโจทย์คือตัวเลข 3,1,5 หรือว่าแยกผลลัพธ์ออกมาเป็นแต่ละคิวรี่

2. ทำไมวันที่ 1/2/2556 ถึง 30/4/2556 ถึงมีสมาชิกทั้งหมด 5 คน ทำไมไม่ 3 คน คือ สมาชิกเลขที่ 5, 6 และ 7
4 @R15930
ล่าสุด ทำได้แล้วครับอาจารย์ ตอนแรกคิดจะทำใน Query เดียว คิดเท่าไหร่ก็คิดไม่ออก
3 คน ของอาจารย์ถูกครับ ตาลายนับผิดครับ

ผมทำ Query เอาแต่คนออกก่อน แล้ว ทำQuery ตามที่อาจารย์แนะนำ
แล้วเอา 2 Query มาจอยกันแบบ ที่มีหัวลูกศร(เรียกไม่ถูก) แล้วใส่เงื่อนไข อีกหน่อย ก็ได้แล้วครับ

บางที่คิดอะไรไม่ออก พอมีคนบอก นิด เปลี่ยนวิธีคิดปับ ก็จะคิดออก ขอบคุณอาจารย์อีกครั้งที่เสียเวลาครับ
5 @R15931
คิวรี่เดียว ก็ต้องใช้ซับคิวรี่ ก็จะออกมาเป็นลักษณะนี้

select (select count(...) from ... where ...), (select count(...) from ... where ...), (select count(...) from ... where ...)
6 @R15932
อาจารย์ครับ มันเปิดตารางไม่ได้ครับ แต่ถ้าเพิ่ม from ....... เข้าไป เป็น
select (select count(...) from ... where ...), (select count(...) from ... where ...), (select count(...) from ... where ...) from.........
มันเปิดตารางได้ แต่ มันจะมีจำนวนเรคคอดเท่ากับจำนวนเรคคอดของตารางนั้น
ซ้ำๆ กันทุกเรคคอดเลยครับ
7 @R15933
ลอง

select (select count(...) from ... where ...), (select count(...) from ... where ...), (select count(...) from ... where ...) from (select min(รหัสสมาชิก) from ...)

8 @R15936
โอเคเลยครับอาจารย์ ได้รูปแบบคิวรีแบบใหม่แล้วครับ ขอบพระคุณอาจารย์มากครับ
@ ประกาศใช้งานเว็บบอร์ดใหม่ => บอร์ดเรียนรู้ Access สำหรับคนไทย
แล้วจะใส่ลิ้งอ้างอิงมาที่โพสต์เก่านี้หรือไม่ก็ตามสะดวกครับ
Time: 0.2815s