- TinyDB Tutorial
- TinyDB - Home
- TinyDB - Introduction
- TinyDB - Environmental Setup
- TinyDB - Insert Data
- TinyDB - Retrieve Data
- TinyDB - Update Data
- TinyDB - Delete Data
- TinyDB - Querying
- TinyDB - Searching
- TinyDB - The where Clause
- TinyDB - The Exists() Query
- TinyDB - The Matches() Query
- TinyDB - The Test() Query
- TinyDB - The Any() Query
- TinyDB - The All() Query
- TinyDB - The one_of() Query
- TinyDB - Logical Negate
- TinyDB - Logical AND
- TinyDB - Logical OR
- TinyDB - Handling Data Query
- TinyDB - Modifying the Data
- TinyDB - Upserting Data
- TinyDB - Retrieving Data
- TinyDB - Document ID
- TinyDB - Tables
- TinyDB - Default Table
- TinyDB - Caching Query
- TinyDB - Storage Types
- TinyDB - Middleware
- TinyDB - Extend TinyDB
- TinyDB - Extensions
- TinyDB Useful Resources
- TinyDB - Quick Guide
- TinyDB - Useful Resources
- TinyDB - Discussion
TinyDB - Retrieve Data
There are numerous ways with the help of which you can retrieve data from a TinyDB database. But to use those ways, you first need to create an instance of the Query class as follows −
from tinydb import Query Student = Query()
Here, Student is the name of the database.
Let's check the various ways to retrieve the information from a TinyDB database.
Data Retrieval Using the Search() Method
The search() method, as its name implies, returns the list of items that mathches the query we provided, otherwise it will return an empty list.
For this and other examples, we will be using the following student database data −
[ { "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" } ]
Let's take an example to understand the search() method −
from tinydb import TinyDB, Query db = TinyDB("leekha.json") student = Query() db.search(student.subject == 'TinyDB' )
The above query will retrieve the the following output from the student database −
[ { "roll_number":1, "st_name":"elen", "mark":250, "subject":"TinyDB", "address":"delhi" }, { "roll_number":5, "st_name":"karan", "mark":275, "subject":"TinyDB", "address":"benglore" } ]
Data Retrieval Using the get() Method
As opposed to the search() method, the get() method returns only one matching document. It will return None, otherwise. For example, let's take the following code −
from tinydb import TinyDB, Query student = Query() db.get(student.subject == 'TinyDB' )
The above query will retrieve the following data from the student database.
[{'roll_number': 1, 'st_name': 'elen', 'mark': 250, 'subject': 'TinyDB', 'address': 'delhi'}]
Data Retrieval using the all() Method
The all() method returns all the documents in the database. For example,
db.all()
It will retrieve the entire data from the student database.
[ { "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" } ]
Data Retrieval Using the for Loop
The for loop also returns all the documents in the database. For example,
for info in db: print(info)
Just like the all() method, it will retrieve all the rows from the student database.
To Continue Learning Please Login
Login with Google