# What is a query in a relational database?

Source: https://zilliz.com/ai-faq/what-is-a-query-in-a-relational-database
Author: zilliz

A query in a relational database is a request for data or information that retrieves, modifies, or interacts with the data stored in the database. Typically, queries are written in Structured Query Language (SQL), which is a standardized language specifically designed for managing and manipulating relational databases. A query can fetch specific records, update existing records, insert new data, or delete records, depending on what the user needs. For example, a simple SQL query to retrieve the names of all employees from an "employees" table might look like this: `SELECT name FROM employees;`.

Queries can be straightforward, like retrieving all records from a table, or more complex, involving multiple tables through joins, filters, and sorting. For instance, if a developer wants to retrieve the names and salaries of employees in a specific department, they might use a more intricate query combining the "employees" and "departments" tables, such as: 
```sql 
SELECT e.name, e.salary 
FROM employees e 
JOIN departments d ON e.department_id = d.id 
WHERE d.name = 'Sales'; 
```
In this example, the query not only retrieves data but also filters based on a specific condition.

Moreover, queries also include functionality for data manipulation and management. Developers can use SQL commands like `INSERT`, `UPDATE`, and `DELETE` to add new records, change existing data, or remove data altogether. For example, to add a new employee, a developer would execute an `INSERT` statement like: 
```sql 
INSERT INTO employees (name, salary, department_id) 
VALUES ('John Doe', 60000, 1); 
``` 
Thus, queries are fundamental to interacting with the data in relational databases, allowing developers to efficiently perform a variety of operations tailored to their application's needs.
