Overview
The WHERE clause in SQL filters records from a result set, frequently in conjunction with other clauses, such as SELECT, Update, or Delete. The WHERE clause indicates the conditions that must be met for a record to be included within the result set. This clause can be utilized to filter records based on various criteria, including certain values in indicated areas, certain expressions, and certain combinations of criteria.
The SQL WHERE Clause Syntax
Pushpa was working as a program designer at an expansive monetary services company. She was entrusted with creating a modern application permitting clients to get monetary information in real-time. After a few weeks of coding, Pushpa realized that she was required to utilize a WHERE clause in her SQL queries to guarantee that only the proper data was being recovered from the database. She spent a few days investigating the distinctive types of WHERE clauses and how best to apply them in her application.
SELECT column1, column2, ...
FROM table_name
WHERE condition1
The WHERE clause in SQL is utilized to indicate criteria that constrain the results of a query. The syntax comprises of a list of conditions that must be met for a record to be returned. Each condition is separated by either the AND or OR keyword, depending on how the conditions are evaluated. For illustration, in the event that you need to return records where both condition1 and condition2 must be genuine, at that point, you'd utilize the AND operator. The syntax for a WHERE clause is: SELECT column1, column2, ... FROM table_name WHERE condition1 AND/OR condition2 AND/OR condition3 AND/OR .
WHERE Clause Example
first_name | last_name | department | salary |
---|---|---|---|
John | Smith | Finance | 5000 |
Jane | Smith | Finance | 6000 |
SELECT *
FROM employees
WHERE last_name = 'Smith'
AND department = 'Finance';
This query will return all of the information from the employees table where the last name is Smith, and the department is Finance.
Text Fields vs. Numeric Fields
Text fields can be utilized within the WHERE clause of an SQL explanation to filter the comes about. In any case, they could be more productive than numeric fields. Text fields require extra processing time to change over the values into a usable format, while numeric fields don't. Also, text fields cannot be utilized in mathematical operations, such as numerical comparisons, which may be required for certain queries.
For illustration, in the event that you wanted to discover all the lines in a table with a specific text value, you'll utilize the following query:
SELECT *
FROM table
WHERE field_text = 'value';
This query would search the field_text column for the value 'value', and return any matching rows. However, if the field_text column were a numeric field, the same query would need to be written as:
SELECT *
FROM table
WHERE field_numeric = 'value';
This query would search the field_numeric column for the value 'value' and return any matching rows. Notice that the value must be enclosed in quotation marks since it is text-based. If the field_numeric column had been a text field, the query would have needed to include a conversion function to convert the value to a numerical value before comparing it.
Operators in The WHERE Clause
Examples
Customer Table
Customer_ID | Name | Age |
---|---|---|
1 | John | 25 |
2 | Jane | 25 |
3 | Joe | 25 |
4 | Jill | 27 |
SELECT * FROM customers WHERE age = 25;
This will return all customers with an age equal to 25.
2. > : For example,
SELECT * FROM customers WHERE age > 25;
This will return all customers with age greater than 25.
SELECT * FROM customers WHERE age < 25;
This will return all customers age less than 25.
4. >=: For example,
SELECT * FROM customers WHERE age >= 25; This will return all customers with an age greater than or equal to 25.
5. <= : For example,
SELECT * FROM customers WHERE age <= 25;
This will return all customers with age less than or equal to 25.
SELECT * FROM customers WHERE age <> 25;
This will return all customers with age not equal to 25.
SELECT * FROM customers WHERE name LIKE 'J%';
This will return all customers with name starting with the letter 'J'.
SELECT * FROM customers WHERE age IN (20,25,30);
This will return all customers with age 20, 25, or 30.
SELECT * FROM customers WHERE age BETWEEN 20 AND 30;
This will return all customers between age of 20 and 30
Conclusion
After investigating the diverse types of WHERE clauses in SQL, she was able to induce the application to work, and the clients could get to their monetary information in real-time. Pushpa's hard work and commitment had paid off.
Key takeaways
Quiz
Answer: d. WHERE clause;
Answer: c. OVER
Answer: a. SELECT * FROM table WHERE value = 'specific value';
Answer: a. SELECT * FROM table WHERE value != 'specific value';
Top Tutorials
Related Articles