SQL Tutorial
SQL Database
SQL Table
SQL Select
SQL Order By
SQL Insert
SQL Update
SQL Delete
Difference
SQL Injection
SQL String Functions
Miscl
- SQL Formatter
- SQL group by
- SQL add/drop/update column operation
- SQL CAST Function
- SQL Comments
- SQL CONCAT Function
- CTE (Common Table Expression)SQL
- How to use distinct in SQL?
- Joining Three or More Tables in SQL
- What is Web SQL?
- How to create functions in SQL?
- How to run SQL Script?
- How to Delete Duplicate Rows in SQL?
- Nth Highest salary
- 12 Codd's Rules
- SQL EXCEPT
- Types of SQL JOIN
- Change datatype of column in SQL
- SQL Auto Increment
- SQL Like
- Commit and Rollback in SQL
- SQL Concatenate
- SQL get month from the date
- Savepoint in SQL
- SQL ORDER BY DATE
- TIME Datatype in SQL
- SQL BETWEEN
- CRUD Operations in SQL
- SQL INDEX
- Scalar Functions in SQL
- SET Operators in SQL
- Types of SQL Commands
- TCL Commands in SQL
- SQL Subquery
- SQL View
- Constraints in SQL
- Pattern Matching in SQL
- SQL Date Functions
- DDL Commands in SQL
- DML Commands in SQL
- SQL CASE
- SQL Inner Join
- SQL IN Operator
- Check Constraint in SQL
- SQL CLAUSES
- SQL LOGICAL OPERATORS
- Delete Column from Table
- Add Column in the Table
- Delete one row in SQL
- Change the Column Value
- How to Add Foreign Key in SQL
- Add a Primary Key
- Insert One or More rows
- How to Use LIKE in SQL
- Cursor in SQL
- Difference Between DROP and Truncate
- SQL Comparison Operators
- SQL COUNT WHERE
- SQL SELECT MIN
- SQL Stored Procedure
- SQL SELECT AVG
- SQL SELECT MAX
- SQL ADD COLUMN
- How to use Auto-Increment in SQL
- SQL Languages
- SQL Arithmetic Operators
- How to Use GROUP BY in SQL
- How to Use ORDER BY in SQL
- Trigger in SQL
- What is Race Condition
- SQL COUNT DISTINCT
PL/SQL Tutorial
Sql Interview Question
SQl Quiz
SQL IN Operator
- IN is an operator in SQL, which is generally used with a WHERE clause.
- Using the IN operator, multiple values can be specified.
- It allows us to easily test if an expression matches any value in a list of values.
- IN operator is used to replace many OR conditions.
Syntax of IN operator in SQL:
Now let us take a deeper dive into the IN operator in SQL with the help of examples. All the queries in the examples will be written using the MySQL database.
Consider we have t_students table with the following data:
ID | Name | Hometown | Percentage | Favourite_Subject |
---|---|---|---|---|
1 | Soniya Jain | Udaipur | 89 | Physics |
2 | Harshada Sharma | Kanpur | 92 | Chemistry |
3 | Anuja Rajput | Jaipur | 78 | History |
4 | Pranali Singh | Nashik | 88 | Geography |
5 | Renuka Deshmukh | Panipat | 90 | Biology |
6 | Swati Kumari | Faridabad | 93 | English |
7 | Prachi Jaiswal | Gurugram | 96 | Hindi |
8 | Sheetal Sonar | Jaipur | 93 | Physics |
9 | Erica Goenka | Faridabad | 92 | Biology |
10 | Monali Chaudhari | Panipat | 90 | History |
Example 1:
Write a query to display all the records from the t_students table where the hometown of the students is one of the following places: Faridabad, Panipat, or Jaipur.
Query:
Here, we have written a SELECT query with a WHERE clause on the Hometown column followed by IN operator. All the places which are allowed in the Hometown column, i.e., Faridabad, Panipat, or Jaipur, are passed as a parameter to the IN operator. So, only those students from the t_students table whose hometown is one of the places which are passed to the IN operator will be considered in the output.
You will get the following output:
ID | Name | Hometown | Percentage | Favourite_Subject |
---|---|---|---|---|
3 | Anuja Rajput | Jaipur | 78 | History |
5 | Renuka Deshmukh | Panipat | 90 | Biology |
6 | Swati Kumari | Faridabad | 93 | English |
8 | Sheetal Sonar | Jaipur | 93 | Physics |
9 | Erica Goenka | Faridabad | 92 | Biology |
10 | Monali Chaudhari | Panipat | 90 | History |
There are six students in the t_students table whose hometown is one of the following places: Faridabad, Panipat, or Jaipur.
Example 2:
Write a query to display all the records from the t_students table where the favourite subject of the students is one of the following subjects: History, Biology, Physics or Chemistry.
Query:
Here, we have written a SELECT query with a WHERE clause on the Favourite_Subject column followed by IN operator. All the subjects which are allowed in the Favourite_Subject column, i.e., History, Biology, Physics, or Chemistry, are passed as a parameter to the IN operator. So, only those students from the t_students table whose favourite subject is one of the subjects which are passed to the IN operator will be considered in the output.
You will get the following output:
ID | Name | Hometown | Percentage | Favourite_Subject |
---|---|---|---|---|
1 | Soniya Jain | Udaipur | 89 | Physics |
2 | Harshada Sharma | Kanpur | 92 | Chemistry |
3 | Anuja Rajput | Jaipur | 78 | History |
5 | Renuka Deshmukh | Panipat | 90 | Biology |
8 | Sheetal Sonar | Jaipur | 93 | Physics |
9 | Erica Goenka | Faridabad | 92 | Biology |
10 | Monali Chaudhari | Panipat | 90 | History |
There are seven students in the t_students table whose favourite subject is one of the following subjects: History, Biology, Physics or Chemistry.
Example 3:
Write a query to display all the records from the t_students table where the percentage secured by the student is one of the following values: 78, 88, 89, 90, or 92.
Query:
Here, we have written a SELECT query with a WHERE clause on the Percentage column followed by IN operator. All the values which are allowed in the Percentage column, i.e., 78, 88, 89, 90, or 92, are passed as a parameter to the IN operator. So, only those students from the t_students table who have secured one of the percentage values which are passed to the IN operator will be considered in the output.
You will get the following output:
ID | Name | Hometown | Percentage | Favourite_Subject |
---|---|---|---|---|
1 | Soniya Jain | Udaipur | 89 | Physics |
2 | Harshada Sharma | Kanpur | 92 | Chemistry |
3 | Anuja Rajput | Jaipur | 78 | History |
4 | Pranali Singh | Nashik | 88 | Geography |
5 | Renuka Deshmukh | Panipat | 90 | Biology |
9 | Erica Goenka | Faridabad | 92 | Biology |
10 | Monali Chaudhari | Panipat | 90 | History |
There are seven students in the t_students table who have secured one of the following percentage values: 78, 88, 89, 90, or 92.
Consider we have another table employee with the following data:
ID | Name | Date_of_Birth | Department | Salary | Job_Location |
---|---|---|---|---|---|
1 | Mansi Shah | 1999-01-10 | Marketing | 35000 | Surat |
2 | Tejal Wagh | 1993-07-05 | HR | 52000 | Pune |
3 | Sejal Kumari | 1995-06-08 | Production | 60000 | Nashik |
4 | Sonal Jain | 1996-12-10 | HR | 23000 | Surat |
5 | Surili Maheshwari | 1993-05-03 | Development | 75000 | Shimla |
6 | Shrusti Sharma | 1999-01-10 | Accounts | 53000 | Noida |
7 | Ankita Joshi | 1990-10-01 | RnD | 48000 | Delhi |
8 | Sharda Patel | 1989-12-12 | Marketing | 30000 | Delhi |
9 | Shivangi More | 1989-01-09 | Accounts | 67000 | Mumbai |
10 | Shweta Tiwari | 1981-10-09 | Purchasing | 60000 | Bangalore |
Example 1:
Write a query to display all the records from the employee table where the date of birth of an employee is one of the following dates: 1999-01-10, 1989-01-09, 1993-03-05, or 1993-05-03.
Query:
Here, we have written a SELECT query with a WHERE clause on the Date_of_Birth column followed by IN operator. All the dates which are allowed in the Date_of_Birth column, i.e., 1999-01-10, 1989-01-09, 1993-03-05, or 1993-05-03, are passed as a parameter to the IN operator. So, only those employees from the employee table whose date of birth matches with the dates passed to the IN operator will be considered in the output.
You will get the following output:
ID | Name | Date_of_Birth | Department | Salary | Job_Location |
---|---|---|---|---|---|
1 | Mansi Shah | 1999-01-10 | Marketing | 35000 | Surat |
5 | Surili Maheshwari | 1993-05-03 | Development | 75000 | Shimla |
6 | Shrusti Sharma | 1999-01-10 | Accounts | 53000 | Noida |
9 | Shivangi More | 1989-01-09 | Accounts | 67000 | Mumbai |
There are four employees in the employee table whose date of birth is either of the dates: 1999-01-10, 1989-01-09, 1993-03-05, or 1993-05-03.
Example 2:
Write a query to display all the records from the employee table where the department in which an employee is working is among one of the following departments: Purchasing, Accounts, Marketing, Production, or RnD.
Query:
Here, we have written a SELECT query with a WHERE clause on the Department column followed by IN operator. All the departments which are allowed in the Department column, i.e., Purchasing, Accounts, Marketing, Production, or RnD, are passed as a parameter to the IN operator. So, only those employees from the employee table who are working in the departments which are passed to the IN operator will be considered in the output.
You will get the following output:
ID | Name | Date_of_Birth | Department | Salary | Job_Location |
---|---|---|---|---|---|
1 | Mansi Shah | 1999-01-10 | Marketing | 35000 | Surat |
2 | Tejal Wagh | 1993-07-05 | HR | 52000 | Pune |
3 | Sejal Kumari | 1995-06-08 | Production | 60000 | Nashik |
4 | Sonal Jain | 1996-12-10 | HR | 23000 | Surat |
6 | Shrusti Sharma | 1999-01-10 | Accounts | 53000 | Noida |
7 | Ankita Joshi | 1990-10-01 | RnD | 48000 | Delhi |
8 | Sharda Patel | 1989-12-12 | Marketing | 30000 | Delhi |
9 | Shivangi More | 1989-01-09 | Accounts | 67000 | Mumbai |
10 | Shweta Tiwari | 1981-10-09 | Purchasing | 60000 | Bangalore |
There are nine employees in the employee table who are working in either of the departments: Purchasing, Accounts, Marketing, Production, or RnD.
Example 3:
Write a query to display all the records from the employee table where the job location of an employee is among one of the following places: Nashik, Surat, Noida, Delhi, or Pune.
Query:
Here, we have written a SELECT query with a WHERE clause on the Job_Location column followed by IN operator. All the places which are allowed in the Job_Location column, i.e., Nashik, Surat, Noida, Delhi, or Pune, are passed as a parameter to the IN operator. So, only those employees from the employee table whose job location is among the places which are passed to the IN operator will be considered in the output.
You will get the following output:
ID | Name | Date_of_Birth | Department | Salary | Job_Location |
---|---|---|---|---|---|
1 | Mansi Shah | 1999-01-10 | Marketing | 35000 | Surat |
2 | Tejal Wagh | 1993-07-05 | HR | 52000 | Pune |
3 | Sejal Kumari | 1995-06-08 | Production | 60000 | Nashik |
4 | Sonal Jain | 1996-12-10 | HR | 23000 | Surat |
6 | Shrusti Sharma | 1999-01-10 | Accounts | 53000 | Noida |
7 | Ankita Joshi | 1990-10-01 | RnD | 48000 | Delhi |
8 | Sharda Patel | 1989-12-12 | Marketing | 30000 | Delhi |
There are seven employees in the employee table whose job location is either Nashik, Surat, Noida, Delhi, or Pune.
Example 4:
Write a query to display all the records from the employee table where the salary of an employee is among one of the following values: 60000, 53000, 30000, or 45000.
Query:
Here, we have written a SELECT query with a WHERE clause on the Salary column followed by IN operator. All the values which are allowed in the Salary column, i.e., 60000, 53000, 30000, or 45000, are passed as a parameter to the IN operator. So, only those employees from the employee table whose salary is among the values which are passed to the IN operator will be considered in the output.
You will get the following output:
ID | Name | Date_of_Birth | Department | Salary | Job_Location |
---|---|---|---|---|---|
3 | Sejal Kumari | 1995-06-08 | Production | 60000 | Nashik |
6 | Shrusti Sharma | 1999-01-10 | Accounts | 53000 | Noida |
8 | Sharda Patel | 1989-12-12 | Marketing | 30000 | Delhi |
10 | Shweta Tiwari | 1981-10-09 | Purchasing | 60000 | Bangalore |
There are four employees in the employee table whose salary is either 60000, 53000, 30000 or 45000.