Skip to main content
Home
  • Tutorials
    • Quality Assurance
    • Software Development
    • Machine Learning
    • Data Science
  • About Us
  • Contact
programsbuzz facebook programsbuzz twitter programsbuzz linkedin
  • Log in

Main navigation

  • Tutorials
    • Quality Assurance
    • Software Development
    • Machine Learning
    • Data Science
  • About Us
  • Contact

Oracle: Types of Subqueries

Profile picture for user akshita.goel
Written by akshita.goel on 01/05/2022 - 11:22

Subqueries in Oracle divided into 3 categories:

  1. Single-Row Subquery
  2. Multi-Row Subquery
  3. Correlated Subquery

In this article we will go through Single and Multi-Row subqueries. To read about Correlated subquery, click here.

Follow the Stu Table as shown below:

Stu Table

1. Single-Row Subquery

Single Row Subqueries are among those nested queries that return a single row as an output. There is some operators list that can be used before subqueries. =,<,>,<=,>= are those operators.

Example

We want to find out details of those Students that Stu_id more than the Student having Roll number=16 :

Select * from Stu
Where Stu_id>(Select Stu_id from Stu where Roll_No=16);

OUTPUT:

subquery1
The highlighted part in the output above displays a single-row subquery. The execution of this highlighted query displays the output as above. It can be noticed that the query returns a single row.

2. Multi-Row Subquery

Multi-line Subqueries are amongst those subqueries, that return multiple rows as an output. Now, consider a situation wherein we need the list of those Students who have Roll_no equal to those having Stu_id>1. 

Select * from Stu
where Roll_no= (Select Roll_no from Stu where Stu_id>1)

But we can see that the above code will display an error and the error mentions:

OUTPUT:

error

This is because the multiline subquery returns multiple rows as an output. So we need to put a multiline operator preceding the subquery to perform the same task. Some Operators are:

  • ANY Operator
  • ALL Operator
  • IN Operator
  • EXIST Operator,
  • NOT EXIST Operator,

Example

We want the list of those Students who have Roll_no equal to those having Stu_id>1.

Select * from Stu
where Roll_no= ANY(Select Roll_no from Stu where Stu_id>1)

OUTPUT:

The output displays a multiline subquery that is marked as highlighted below. You can see executing the subquery has returned 3 rows.
MULTIROW subquery

Related Content
Oracle Tutorial
Correlated Subquery in Oracle
Oracle: Subqueries
  • Log in or register to post comments

Choose Your Technology

  1. Agile
  2. Apache Groovy
  3. Apache Hadoop
  4. Apache HBase
  5. Apache Spark
  6. Appium
  7. AutoIt
  8. AWS
  9. Behat
  10. Cucumber Java
  11. Cypress
  12. DBMS
  13. Drupal
  14. GitHub
  15. GitLab
  16. GoLang
  17. Gradle
  18. HTML
  19. ISTQB Foundation
  20. Java
  21. JavaScript
  22. JMeter
  23. JUnit
  24. Karate
  25. Kotlin
  26. LoadRunner
  27. matplotlib
  28. MongoDB
  29. MS SQL Server
  30. MySQL
  31. Nightwatch JS
  32. PactumJS
  33. PHP
  34. Playwright
  35. Playwright Java
  36. Playwright Python
  37. Postman
  38. Project Management
  39. Protractor
  40. PyDev
  41. Python
  42. Python NumPy
  43. Python Pandas
  44. Python Seaborn
  45. R Language
  46. REST Assured
  47. Ruby
  48. Selenide
© Copyright By iVagus Services Pvt. Ltd. 2023. All Rights Reserved.

Footer

  • Cookie Policy
  • Privacy Policy
  • Terms of Use