values, values_list และ count
ดึงข้อมูลขนาดเล็กและค่ารวม
values, values_list และ count เป็นบทเรียน Django Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 4 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Django Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Django Academy มีบทเรียนทั้งหมด 4 บทเรียน
บางส่วนของบทเรียนนี้ยังไม่ได้รับการแปล และแสดงเป็นภาษาอังกฤษ
Why Go Lightweight
Full model objects carry every field. When you only need a column or two, lighter tools fetch less data and run faster.
values() Returns Dicts
Call values() and each row comes back as a dictionary instead of a model instance. Handy for JSON and quick reads.
Book.objects.values("title", "year")Pick Only What You Need
Name the fields you pass to values() and Django selects just those columns, keeping each dictionary small and focused.
Book.objects.values("title")values_list() Returns Tuples
Prefer tuples? values_list() gives each row as a tuple of values in the order you named the fields.
Book.objects.values_list("title", "year")Flatten a Single Column
Asking for one field? Add flat=True to get a clean list of plain values instead of one-item tuples.
Book.objects.values_list("title", flat=True)flat Needs One Field
Remember, flat=True only works with a single field. Pass two fields and Django raises an error to keep things clear.
These Are Still QuerySets
Both values() and values_list() stay lazy QuerySets, so you can filter and order them before they ever run.
Book.objects.filter(published=True).values("title")Count Without Loading
Need just a total? count() asks the database to count rows directly, far cheaper than pulling them all into Python.
Book.objects.filter(published=True).count()count vs len
Use count() when you only need the number. Calling len() first loads every object, then counts in memory.
Does Anything Match
To check if rows exist, exists() beats count(). It stops at the first match and returns a simple True or False.
Book.objects.filter(year=2024).exists()Combine for Clean Reads
Mix these freely: filter to narrow, then values_list for a tidy list or count for a total. Each query stays lean.
Book.objects.filter(published=True).values_list("id", flat=True)Quick Check
You want a plain list of every book title, not tuples or dictionaries. What do you use?
Recap
Wonderful! values() gives dicts, values_list() gives tuples, and count() totals rows in the database. 📊
คำถามที่พบบ่อย
บทเรียน “values, values_list และ count” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “values, values_list และ count” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Django Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Django Academy มีบทเรียนทั้งหมด 4 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “values, values_list และ count”
ดึงข้อมูลขนาดเล็กและค่ารวม คุณปฏิบัติ Django Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Django Academy หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน Django Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 4 จากทั้งหมด 4 บทเรียน
บทเรียน “values, values_list และ count” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน Django Academy นี้ได้ไหม
ได้ บทเรียน Django Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- all(), get() และ filter()
- การค้นหาด้วยฟิลด์และ exclude()
- order_by การตัดแบ่ง และการประเมินแบบขี้เกียจ
- values, values_list และ count