เรื่องการ กรองข้อมูลใน query อยากให้กรอง ระหว่างช่วงอายุครับ



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

18 พ.ค. 63 , 16:26:10
อ่าน 73 ครั้ง

tanuki

ผมต้องการ นับจำนวนประชาชน โดย แยกเป็น เพศ และอายุ ระหว่าง 1-5 /6-15
แต่ในชุดข้อมูลของผม ไม่มีอายุ 1 -5 ปีครับ
แต่พอกรองข้อมูลแล้ว มันก็ยังขึ้นข้อมูลอื่นที่ อายุ มากกว่า 1 - 5 ปี

แต่ถ้าช่วงอายุ  6-15 มี ก็จะปกติครับ

 

18 พ.ค. 63 , 20:49:38
ตอบกลับ #1

PNR

อ้างถึง
แต่ในชุดข้อมูลของผม ไม่มีอายุ 1 -5 ปีครับ 
แต่พอกรองข้อมูลแล้ว มันก็ยังขึ้นข้อมูลอื่นที่ อายุ มากกว่า 1 - 5 ปี

ลองอธิบายการกรองข้อมูลมานิดนึงนะครับ ว่าผิดตรงไหน

ที่ Criteria ของ Query ลองใส่ไปว่า  Between 1 and 5 
เพื่อให้ได้ อายุระหว่าง 1 ถึง 5 ปี

อีกอย่างหนึ่งที่เกิดขึ้นได้กับการกรอง
คือ Field อายุที่คุณกรองอยู่นั้น Datatype เป็น text ทำให้การกรองผิดพลาดได้ครับ
วิธีแก้คือใช้ Cint() แปลงเป็นตัวเลขก่อนแล้วใช้ Criteria ของ Query


สมมุติ Field Age คือ fieldอายุ datatype ไม่ใช่ตัวเลข
ตารางใช้กรองชื่อ table1

sql ก็ประมาณนี้

SELECT * FROM Table1 WHERE (((CInt([Age])) Between 1 And 5));

ข้อมูลในตาราง table1 จะแสดงทุกฟิลล์ และจะกรองฟิลล์อายุ ช่วง 1-5  หรือช่วงอายุที่เราต้องการให้เราครับ
« แก้ไขครั้งสุดท้าย: 18 พ.ค. 63 , 21:07:21 โดย PNR »
:meaw: :grin: :shout:
 
โพสต์นี้ได้รับคำขอบคุณจาก: tanuki

19 พ.ค. 63 , 09:51:09
ตอบกลับ #2

tanuki

ขอบคุณมากครับ เป็นไปตามที่ อ. บอก

 


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