TINYDB USEFUL RESOURCES
CÁC CHỦ ĐỀ
BÀI MỚI NHẤT
MỚI CẬP NHẬT

Truy vấn test() trong TinyDB

Thông qua việc tạo ra các hàm kiểm tra riêng, mình có thể thực hiện các phép so sánh linh hoạt, từ đó tìm kiếm chính xác các giá trị trong cơ sở dữ liệu JSON. Với cú pháp đơn giản và khả năng tùy biến cao, test() cho phép người dùng thực hiện các truy vấn phức tạp một cách dễ dàng, hỗ trợ tối ưu hóa quá trình xử lý dữ liệu.

test php

banquyen png
Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức.

Truy vấn test() trong TinyDB dùng để kiểm tra xem các tham số được cung cấp có khớp với dữ liệu trong bảng hay không. Nếu các tham số này khớp với dữ liệu, truy vấn sẽ trả về dữ liệu tương ứng; ngược lại, nó sẽ trả về giá trị rỗng. Đầu tiên, chúng ta cần định nghĩa một hàm kiểm tra và các tham số của nó, sau đó TinyDB sẽ tìm kiếm dữ liệu trong cơ sở dữ liệu đã cho.

Cú pháp của truy vấn test() trong TinyDB

Cú pháp của truy vấn test() trong TinyDB như sau:

db.search(Query().field.test(function or condition, *arguments))

Trong đó:

Bài viết này được đăng tại [free tuts .net]

  • field đại diện cho phần dữ liệu mà chúng ta muốn truy cập.
  • Query() là đối tượng được tạo từ bảng JSON, ví dụ là bảng student.

Tạo hàm kiểm tra tùy chỉnh trong TinyDB

Chúng ta có thể tạo một hàm kiểm tra tùy chỉnh bằng cách sử dụng lambda như sau:

object = lambda t: t == 'value'

Ở đây, từ khóa lambda rất quan trọng để tạo hàm kiểm tra tùy chỉnh.

Ví dụ 1

Hãy cùng tìm hiểu cách hoạt động của truy vấn test() thông qua một số ví dụ. Chúng ta sẽ sử dụng cơ sở dữ liệu học sinh đã đề cập trong các chương trước.

Đầu tiên, chúng ta sẽ tạo một hàm kiểm tra và sau đó sử dụng nó trong bảng học sinh:

from tinydb import TinyDB, Query
db = TinyDB('student.json')
objects = lambda t: t == [250, 280]
db.search(Query().mark.test(objects))

Truy vấn này sẽ trả về các dòng có trường mark chứa giá trị [250, 280]:

[
   {
      "roll_number": 2,
      "st_name": "Ram",
      "mark": [250, 280],
      "subject": ["TinyDB", "MySQL"],
      "address": "delhi"
   }
]

Ví dụ 2

Trong ví dụ này, chúng ta sẽ sử dụng trường subject trong hàm kiểm tra:

student = Query()
db = TinyDB('student.json')
objects = lambda t: t == 'TinyDB'
db.search(student.subject.test(objects))

Truy vấn này sẽ trả về tất cả các dòng có trường subject có giá trị là "TinyDB":

[
   {
      "roll_number": 1,
      "st_name": "elen",
      "mark": 250,
      "subject": "TinyDB",
      "address": "delhi"
   },
   {
      "roll_number": 5,
      "st_name": "karan",
      "mark": 275,
      "subject": "TinyDB",
      "address": "benglore"
   }
]

Với TinyDB và truy vấn test(), bạn có thể tùy chỉnh cách kiểm tra dữ liệu trong các bảng JSON, giúp việc truy xuất dữ liệu trở nên linh hoạt và mạnh mẽ hơn.

Kết bài

Truy vấn test() trong TinyDB mang lại sự linh hoạt và hiệu quả cho việc kiểm tra dữ liệu trong các bảng JSON, đặc biệt khi cần áp dụng các điều kiện phức tạp. Nhờ khả năng tạo các hàm kiểm tra tùy chỉnh, người dùng có thể dễ dàng kiểm soát việc truy xuất dữ liệu theo những yêu cầu cụ thể. Qua đó, test() trở thành một công cụ hữu ích trong việc tối ưu hóa quy trình xử lý dữ liệu, giúp tiết kiệm thời gian và nâng cao hiệu quả công việc.

Cùng chuyên mục:

Extend TinyDB trong TinyDB

Extend TinyDB trong TinyDB

Tìm hiểu Middleware trong TinyDB

Tìm hiểu Middleware trong TinyDB

Storage Types trong TinyDB

Storage Types trong TinyDB

Caching Query trong TinyDB

Caching Query trong TinyDB

Table mặc định trong TinyDB

Table mặc định trong TinyDB

Tìm hiểu Tables trong TinyDB

Tìm hiểu Tables trong TinyDB

ID tài liệu (Document ID) trong TinyDB

ID tài liệu (Document ID) trong TinyDB

Truy xuất dữ liệu TinyDB

Truy xuất dữ liệu TinyDB

Upserting dữ iệu trong TinyDB

Upserting dữ iệu trong TinyDB

Thao tác chỉnh sửa dữ liệu trong TinyDB

Thao tác chỉnh sửa dữ liệu trong TinyDB

Xử lý truy vấn dữ liệu trong TinyDB

Xử lý truy vấn dữ liệu trong TinyDB

Toán tử Logical OR trong TinyDB

Toán tử Logical OR trong TinyDB

Toán tử

Toán tử "Logical AND" trong TinyDB

Phủ định logic trong TinyDB

Phủ định logic trong TinyDB

Truy vấn one_of() trong TinyDB

Truy vấn one_of() trong TinyDB

Truy vấn all() trong TinyDB

Truy vấn all() trong TinyDB

Truy vấn any() trong TinyDB

Truy vấn any() trong TinyDB

Truy vấn matches() trong TinyDB

Truy vấn matches() trong TinyDB

Truy vấn exists() nâng cao trong TinyDB

Truy vấn exists() nâng cao trong TinyDB

Câu lệnh

Câu lệnh "where" trong TinyDB

Top