Câu lệnh "where" trong TinyDB
TinyDB là một cơ sở dữ liệu đơn giản, nhỏ gọn và dễ sử dụng, đặc biệt phù hợp cho các ứng dụng nhỏ hoặc các dự án cần một hệ thống lưu trữ dữ liệu nhanh chóng mà không yêu cầu các hệ quản trị cơ sở dữ liệu phức tạp. Với TinyDB, việc tìm kiếm và truy xuất dữ liệu trở nên dễ dàng hơn nhờ các câu lệnh như "where". Bài viết này sẽ hướng dẫn bạn cách sử dụng câu lệnh "where" trong TinyDB để lọc dữ liệu theo các tiêu chí cụ thể, từ đó giúp tăng hiệu quả làm việc với dữ liệu.
TinyDB cung cấp câu lệnh "where" giúp bạn tìm kiếm dữ liệu cụ thể. Câu lệnh "where" lọc ra những dữ liệu không cần thiết, giúp truy cập dữ liệu nhanh chóng hơn. Trước khi sử dụng câu lệnh "where", chúng ta cần nhập thư viện tương ứng.
Cú pháp của câu lệnh "where" trong TinyDB
from tinydb import where db.search(where('field') == 'value')
Hãy cùng tìm hiểu cách sử dụng câu lệnh "where" thông qua một số ví dụ.
Cơ sở dữ liệu sinh viên
Trong các ví dụ dưới đây, chúng ta sẽ sử dụng cơ sở dữ liệu sinh viên sau:
Bài viết này được đăng tại [free tuts .net]
[ { "roll_number": 1, "st_name": "elen", "mark": 250, "subject": "TinyDB", "address": "delhi" }, { "roll_number": 2, "st_name": "Ram", "mark": [250, 280], "subject": ["TinyDB", "MySQL"], "address": "delhi" }, { "roll_number": 3, "st_name": "kevin", "mark": [180, 200], "subject": ["oracle", "sql"], "address": "keral" }, { "roll_number": 4, "st_name": "lakan", "mark": 200, "subject": "MySQL", "address": "mumbai" }, { "roll_number": 5, "st_name": "karan", "mark": 275, "subject": "TinyDB", "address": "benglore" } ]
Sử dụng câu lệnh "where" với trường "subject" trong TinyDB
Chúng ta sử dụng câu lệnh "where" để tìm kiếm dữ liệu trong trường "subject":
db.search(where('subject') == 'MySQL')
Truy vấn này sẽ lấy tất cả các dòng có trường "subject" là "MySQL":
[{ "roll_number": 4, "st_name": "lakan", "mark": 200, "subject": "MySQL", "address": "mumbai" }]
Ví dụ 2: Sử dụng câu lệnh "where" với điều kiện "khác" (!=
)
Trong ví dụ này, chúng ta sử dụng điều kiện "khác" để tìm kiếm những dòng mà điểm số (trường "mark") khác 275:
db.search(where('mark') != 275)
Truy vấn này sẽ trả về tất cả các dòng có điểm số không phải là 275:
[ { "roll_number": 1, "st_name": "elen", "mark": 250, "subject": "TinyDB", "address": "delhi" }, { "roll_number": 2, "st_name": "Ram", "mark": [250, 280], "subject": ["TinyDB", "MySQL"], "address": "delhi" }, { "roll_number": 3, "st_name": "kevin", "mark": [180, 200], "subject": ["oracle", "sql"], "address": "keral" }, { "roll_number": 4, "st_name": "lakan", "mark": 200, "subject": "MySQL", "address": "mumbai" } ]
Kết bài
Câu lệnh "where" trong TinyDB giúp bạn dễ dàng lọc và tìm kiếm dữ liệu một cách nhanh chóng. Với khả năng sử dụng các điều kiện như "bằng" (==
) hay "khác" (!=
), bạn có thể linh hoạt trong việc truy xuất những dữ liệu mà mình cần.