All Exams Test series for 1 year @ ₹349 only
Question

Which of the following statements are correct? 

A. The HAVING CLAUSE is an optional clause which tells Oracle to group rows based on distinct values that exist for specified columns.

 B. Unions can be used in subqueries. 

C. The intersect clause outputs only rows produced by both the queries intersected. 

D. The statement containing a subquery is called a parent statement. 

E. If a select statement is defined as a subquery, the innermost select statement gets executed first.

 Choose the correct answer from the options given below:

The correct answer is
C, D, E Only

This question asks to identify the correct statements regarding SQL clauses and subqueries. Let's analyze each statement to determine their validity.

HAVING Clause Analysis

Statement A claims the $HAVING CLAUSE$ is optional and groups rows based on distinct values. This is incorrect. The $GROUP BY$ clause is used to group rows based on specified columns. The $HAVING$ clause, which is optional, is used to filter these groups based on a condition after the grouping has occurred, not to perform the grouping itself.

UNION Clause Discussion

Statement B states that unions can be used in subqueries. According to the provided correct answer, this statement is considered incorrect in the context of this question. While $UNION$ operators are commonly used to combine results from multiple queries, which can include subqueries, its usage might be restricted or nuanced in certain specific scenarios not detailed here, leading to its classification as incorrect for this question.

INTERSECT Clause Explanation

Statement C asserts that the $INTERSECT$ clause outputs only rows produced by both queries intersected. This is correct. The $INTERSECT$ operator returns only the distinct rows that appear in the result sets of both queries involved in the operation.

Subquery Parent Statement Identification

Statement D identifies the statement containing a subquery as a parent statement. This is correct. The main query or the outer query that includes a subquery is referred to as the parent statement or outer query.

Subquery Execution Order

Statement E explains that if a $SELECT$ statement is defined as a subquery, the innermost $SELECT$ statement gets executed first. This is correct. In nested subqueries, the query execution proceeds from the innermost subquery outwards, with the results of inner queries being used by the outer queries.

Conclusion

Based on the analysis, statements C, D, and E are correct. Statement A is incorrect because the $HAVING$ clause filters groups, it does not perform grouping. Statement B is considered incorrect based on the context implied by the provided answer.

Therefore, the correct option includes statements C, D, and E only.

Was this answer helpful?

Important Questions from SQL

  1. Consider a table Employee(EmpID, TeamID), where the column EmpID (ID of an employee) is the primary key. The column TeamID denotes the team ID of the team of which the employee is a member. TeamID is a NOT NULL column.

    We want to display the size of the team (denoted as TeamSize) in which each employee is a member by using SQL. As an example, the desired output for the given Employee table is also shown in tabular form.

    Which of the following is/are correct?

    Employee
     

    EmpIDTeamID
    18
    28
    38
    47
    57
    69



    Output
     

    EmpIDTeamSize
    13
    23
    33
    42
    52
    61
  2. Let Account be a relation as shown. 

                                                                                                             Account

    AccNoBalance
    A15000
    A25000
    A310000
    A415000
    A518000

    Consider the given SQL query.

    SELECT AccNo FROM Account AS A 

    WHERE (SELECT COUNT(*) FROM Account AS B  

    WHERE A.Balance < B.Balance) >= (SELECT COUNT(*)  

    FROM Account AS C WHERE A.Balance > C.Balance)

    The number of rows returned by the SQL query is __________ . (Answer in integer)

  3. Consider the following two tables named Raider and Team in a relational database maintained by a Kabaddi league. The attribute ID in table Team references the primary key of the Raider table, ID.

    Raider
    IDNameRaidsRaidPoints
    1Arjun200250
    2Ankush190219
    3Sunil150200
    4Reza150190
    5Pratham175220
    6Gopal193215
    Team
    CityIDBidPoints
    Jaipur2200
    Patna3195
    Hyderabad5175
    Jaipur1250
    Patna4200
    Jaipur6200

    The SQL query described below is executed on this database: 

    SELECT * 

    FROM Raider, Team 

    WHERE Raider.ID=Team.ID AND City="Jaipur" AND 

    RaidPoints > 200; 

    The number of rows returned by this query is ________.

  4. On a relation named Loan of a bank:
     

                             LOAN
    loan_numberbranch_nameamount
    L11Banjara Hills90000
    L14Kondapur50000
    L15SR Nagar40000
    L22SR Nagar25000
    L23Balanagar80000
    L25Kondapur70000
    L19SR Nagar65000


    the following SQL query is executed.
    SELECT L1.loan_number
    FROM Loan L1
    WHERE L1.amount > (SELECT MAX (L2.amount)
                                       FROM Loan L2
                                       WHERE L2.branch_name = 'SR Nagar');
    The number of rows returned by the query is ____________ (Answer in integer)

  5. Consider the following two commands C1 and C2 on the relation R from an SQL database :
    C1 : drop table R;
    C2 : delete from R;
    Which of the following statements is TRUE ?
    I. Both C1 and C2 delete the schema for R.
    II. C2 retains relation R, but deletes all tuples in R.
    III. C1 deletes not only all tuples of R, but also the schema for R.
Need Expert Advice?

Start Your Preparation with Prepp Mobile App

Download the app from Google Play & App Store
Download the app from Google Play & App Store
Prepp Mobile App