SELECT & WHERE
SELECT — เลือกข้อมูลจากตาราง
Section titled “SELECT — เลือกข้อมูลจากตาราง”SELECT คือคำสั่งแรกที่ทุกคนต้องรู้ มันบอก database ว่า “เอาคอลัมน์ไหนมาให้ฉัน”
เหมือนการเลือกคอลัมน์ที่ต้องการดูแล้วซ่อนคอลัมน์อื่น
// อ่านไฟล์แล้ว parse เฉพาะ field ที่ต้องการfscanf(fp, "%s %s", name, email);import pandas as pddf = pd.read_csv("students.csv")df[["name", "email"]]-- เลือกทุกคอลัมน์SELECT * FROM students;
-- เลือกเฉพาะบางคอลัมน์SELECT name, email FROM students;
-- เลือกคอลัมน์เดียวSELECT name FROM students;WHERE — กรองแถวด้วยเงื่อนไข
Section titled “WHERE — กรองแถวด้วยเงื่อนไข”WHERE ทำงานเหมือนตัวกรอง — แถวไหนตรงเงื่อนไขก็ผ่าน แถวที่ไม่ตรงก็ถูกตัดออก
Comparison Operators
Section titled “Comparison Operators”| Operator | ความหมาย | ตัวอย่าง |
|---|---|---|
= | เท่ากับ | WHERE active = TRUE |
<> หรือ != | ไม่เท่ากับ | WHERE name <> 'สมชาย' |
< | น้อยกว่า | WHERE price < 5000 |
> | มากกว่า | WHERE price > 3000 |
<= | น้อยกว่าหรือเท่ากับ | WHERE price <= 4500 |
>= | มากกว่าหรือเท่ากับ | WHERE enrolled_on >= '2025-01-01' |
ตัวอย่าง WHERE
Section titled “ตัวอย่าง WHERE”-- นักเรียนที่ยัง active อยู่SELECT name, email FROM studentsWHERE active = TRUE;
-- ค่าเรียนมากกว่า 4000 บาทSELECT student_id, name, price FROM studentsWHERE price > 4000;
-- สมัครตั้งแต่ปี 2025SELECT name, enrolled_on FROM studentsWHERE enrolled_on >= '2025-01-01';AND, OR, NOT — รวมหลายเงื่อนไข
Section titled “AND, OR, NOT — รวมหลายเงื่อนไข”-- AND: ทั้งสองเงื่อนไขต้องเป็นจริงSELECT name, price FROM studentsWHERE active = TRUE AND price > 3000;
-- OR: เงื่อนไขใดเงื่อนไขหนึ่งเป็นจริงSELECT name FROM studentsWHERE price < 2000 OR price > 8000;
-- NOT: กลับเงื่อนไขSELECT name FROM studentsWHERE NOT active;