Access SQL: ส่วนคำสั่ง WHERE

บทความนี้เป็นหนึ่งในชุดบทความเกี่ยวกับ Access SQL บทความนี้อธิบายวิธีเขียนส่วนคำสั่ง WHERE และใช้ตัวอย่างในการแสดงเทคนิคต่างๆ ที่คุณสามารถใช้ได้ในส่วนคำสั่ง WHERE

ในคำสั่ง SQL ส่วนคำสั่ง WHERE ระบุเกณฑ์ที่ค่าเขตข้อมูลต้องมีเพื่อให้ระเบียนที่มีค่านั้นถูกรวมไว้ในผลลัพธ์ของคิวรี

สำหรับภาพรวมของ Access SQL ให้ดูบทความ Access SQL: แนวคิดพื้นฐาน คำศัพท์ และไวยากรณ์

ในบทความนี้

จำกัดผลลัพธ์โดยใช้เกณฑ์

ไวยากรณ์ส่วนคำสั่ง WHERE

ใช้ส่วนคำสั่ง WHERE เพื่อรวมแหล่งข้อมูล

จำกัดผลลัพธ์โดยใช้เกณฑ์

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

ตารางต่อไปนี้จะแสดงตัวอย่างเกณฑ์และอธิบายวิธีการทำงานของเกณฑ์เหล่านั้น

เกณฑ์

คำอธิบาย

>25 และ <50

เกณฑ์นี้จะนำไปใช้กับเขตข้อมูลตัวเลข เช่น ราคา หรือ UnitsInStock จะมีเฉพาะระเบียนที่ประกอบด้วยเขตข้อมูลราคา หรือ UnitsInStock.ที่มี ค่ามากกว่า 25 และน้อยกว่า 50

DateDiff ("yyyy", [BirthDate], Date()) > 30

เกณฑ์นี้ใช้กับเขตข้อมูลวันที่/เวลา เช่น BirthDate เฉพาะระเบียนที่จำนวนปีระหว่างวันเกิดของบุคคลและวันที่ของวันนี้มีค่ามากกว่า 30เท่านั้นที่จะถูกรวมไว้ในผลลัพธ์แบบสอบถาม

Is Null

เกณฑ์นี้สามารถใช้กับเขตข้อมูลชนิดใดๆ ก็ได้เพื่อแสดงระเบียนที่เขตข้อมูลมีค่าเป็น Null

ดังที่แสดงในตารางที่แล้ว เกณฑ์อาจมีลักษณะแตกต่างกันมาก ขึ้นอยู่กับชนิดข้อมูลของเขตข้อมูลซึ่งนำเกณฑ์เหล่านั้นไปใช้และความต้องการที่เฉพาะเจาะจงของคุณ โดยบางเกณฑ์จะเป็นแบบง่ายและใช้ตัวดำเนินการและค่าคงที่พื้นฐาน ในขณะที่เกณฑ์อื่นๆ มีลักษณะซับซ้อนและใช้ฟังก์ชัน ตัวดำเนินการพิเศษและมีการอ้างอิงเขตข้อมูล

สิ่งสำคัญ: ถ้าเขตข้อมูลถูกใช้กับฟังก์ชันการรวม คุณจะไม่สามารถระบุเกณฑ์สำหรับเขตข้อมูลนั้นในส่วนคำสั่ง WHERE ได้ โดยคุณต้องใช้ส่วนคำสั่ง HAVING เพื่อระบุเกณฑ์สำหรับเขตข้อมูลที่ถูกรวมแทน สำหรับข้อมูลเพิ่มเติม ให้ดูบทความAccess SQL: แนวคิดพื้นฐาน คำศัพท์ และไวยากรณ์ และ ส่วนคำสั่ง HAVING

ไวยากรณ์ส่วนคำสั่ง WHERE

คุณใช้เกณฑ์ของคิวรีในส่วนคำสั่ง WHERE ของคำสั่ง SELECT

ส่วนคำสั่ง WHERE มีไวยากรณ์พื้นฐานดังต่อไปนี้:

WHERE field = criterion

ตัวอย่างเช่น สมมติว่าคุณต้องการหมายเลขโทรศัพท์ของลูกค้า แต่คุณจำได้เพียงว่านามสกุลของลูกค้าคือ Bagel แทนที่จะต้องดูหมายเลขโทรศัพท์ทั้งหมดในฐานข้อมูลของคุณ คุณสามารถใช้ส่วนคำสั่ง WHERE เพื่อจำกัดผลลัพธ์และทำให้คุณค้นหาหมายเลขโทรศัพท์ที่คุณต้องการได้ง่ายขึ้น สมมติว่านามสกุลนั้นถูกเก็บไว้ในเขตข้อมูลที่ชื่อว่า LastName ส่วนคำสั่ง WHERE ของคุณจะมีลักษณะดังต่อไปนี้:

WHERE [LastName]='Bagel'

หมายเหตุ: คุณไม่จำเป็นต้องทำให้เกณฑ์ในส่วนคำสั่ง WHERE มีค่าเท่ากัน คุณสามารถใช้ตัวดำเนินการเปรียบเทียบอื่น เช่น มากกว่า (>) หรือน้อยกว่า (<) ได้ ตัวอย่างเช่น WHERE [Price]>100.

ใช้ส่วนคำสั่ง WHERE เพื่อรวมแหล่งข้อมูล

ในบางครั้งคุณอาจต้องการรวมแหล่งข้อมูลโดยอิงตามเขตข้อมูลที่มีข้อมูลตรงกัน แต่มีชนิดข้อมูลต่างกัน ตัวอย่างเช่น เขตข้อมูลในตารางหนึ่งอาจมีชนิดข้อมูลเป็นตัวเลข และคุณต้องการเปรียบเทียบเขตข้อมูลนั้นกับเขตข้อมูลในตารางอื่นที่มีชนิดข้อมูลเป็นข้อความ

คุณไม่สามารถสร้างการรวมระหว่างเขตข้อมูลที่มีชนิดข้อมูลต่างกันได้ เมื่อต้องการรวมข้อมูลจากแหล่งข้อมูลสองแห่งตามค่าในเขตข้อมูลที่มีชนิดข้อมูลต่างกัน คุณต้องสร้างส่วนคำสั่ง WHERE ที่ใช้เขตข้อมูลหนึ่งเป็นเกณฑ์สำหรับอีกเขตข้อมูล โดยใช้คำสำคัญ LIKE

ตัวอย่างเช่น สมมติว่าคุณต้องการใช้ข้อมูลจาก table1 และ table2 แต่เฉพาะเมื่อข้อมูลใน field1 (เขตข้อมูลข้อความใน table1) ตรงกับข้อมูลใน field2 (เขตข้อมูลตัวเลขใน table2) เท่านั้น ส่วนคำสั่ง WHERE ของคุณจะมีลักษณะดังนี้:

WHERE field1 LIKE field2

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีสร้างเกณฑ์เพื่อใช้ในส่วนคำสั่ง WHERE ให้ดูที่บทความ ตัวอย่างของเกณฑ์คิวรี

ด้านบนของหน้า

ขยายทักษะของคุณ
สำรวจการฝึกอบรม
รับฟีเจอร์ใหม่ก่อนใคร
เข้าร่วม Office Insider

ข้อมูลนี้เป็นประโยชน์หรือไม่

ขอบคุณสำหรับคำติชมของคุณ!

ขอขอบคุณสำหรับคำติชมของคุณ! เราคิดว่าอาจเป็นประโยชน์ที่จะให้คุณได้ติดต่อกับหนึ่งในตัวแทนฝ่ายสนับสนุน Office ของเรา

×