Table Student has 3 columns,Student_id,Student_Name &
Course_Id. Table Course has 2 columns, Course_Id &
Course_Name.Write a query to listdown all the Courses and
number of student in each course.
Answers were Sorted based on User's Feedback
Answer / monalisa.dalbehera
select count(s.student_id),c.cource_name
from student s,course c
where c.course_id=s.course_id
group by c.course_name;
| Is This Answer Correct ? | 48 Yes | 3 No |
Answer / pradip d
select count(student_name),course_name from student,course
where course.course_id=student.course_id group by course_name;
| Is This Answer Correct ? | 18 Yes | 8 No |
Answer / kalyan
SELECT COURSE_NAME,COUNT(B.STUDENT_ID) NO_OF_STUDENTS
FROM COURSE A LEFT OUTER JOIN STUDENT B
USING (COURSE_ID)
GROUP BY A.COURSE_NAME
OR
SELECT COURSE_NAME,COUNT(B.STUDENT_ID) NO_OF_STUDENTS
FROM COURSE A , STUDENT B
WHERE A.COURSE_ID = B.COURSE_ID(+)
GROUP BY A.COURSE_NAME
This will list all the courses with no of students
| Is This Answer Correct ? | 8 Yes | 1 No |
Answer / neo28
select Course_Id, Course_Name, count(Student_id) from
(
select c.Course_Id, c.Course_Name, s.Student_id
from Student s, Course c
where s.Course_Id(+) = c.Course_Id
) group by Course_Id
order by Course_Id;
| Is This Answer Correct ? | 1 Yes | 0 No |
Answer / iamanocp
select c.course_id, count(s.student_id)
from student s, course c
where s.course_id = c.course_id
group by c.course_id;
| Is This Answer Correct ? | 2 Yes | 2 No |
Answer / lova raju allumalla
select count(stud_name),course_name from student s,course c
where s.course_id = c.course_id group by course_name
/
| Is This Answer Correct ? | 2 Yes | 2 No |
Answer / cm
select s.stud_name,c.course_name from student s,course c
where s.course_id = c.course_id group by
s.stud_name,c.course_name;
| Is This Answer Correct ? | 1 Yes | 2 No |
Answer / dinakar
select course_id,count(*) from student where course_id in
(select course_id From course)
GROUP BY COURSE_ID
| Is This Answer Correct ? | 2 Yes | 4 No |
Answer / guest
select count(student_id),course_name ,student_name
from student s, course c
where s.course_id = c.course_id
group by course_id
order by student_id desc
| Is This Answer Correct ? | 2 Yes | 5 No |
What are the operators used in select statements?
how to create table with in the procedure or function?
Why do we need view in sql?
if we give update table_name set column_name= default. what will happen?
what is purge command explain about oracle performance tuning
2 Answers Accenture, eCentric Solutions,
Do ddl statements need commit?
what is the correct way of selection statement a. select/from/table_name/orderby/groupby/having b. select/from/table_name/groupby/having/orderby
5 Answers HCL, JPMorgan Chase,
How many types of literals are available in pl sql?
Hi, I am new in oracle(SQL), could anyone help me in writing a correct SQL. Below is the table structure. Table: Subsc Fields: 1. Sub_no (this field will hold values of subscriber nos, for e.g. S111111, S222222, S333333, S444444, etc.) 2. s_status (this field will hold values for different status of subscriber, for e.g. 'A', 'S', 'C', etc.) 3. cus_id (this field will hold values of bill nos for e.g. 11111111, 22222222, 33333333, 44444444, etc.) Table: Bill Fields: 1. Bill_no this field will hold values of bill nos for e.g. 11111111, 22222222, 33333333, 44444444, etc.) 2. b_status = (this field will hold values for different status of bill for e.g. 'O', 'C', 'S', etc.) Note: 1. The Sub_no is a Primary key of Subsc table. 2. The cus_id is a foreign in Subsc table (referred from Bill_no field of Bill table) 3. The Bill_no field is the Primary key of Bill table. Query A --> I wrote a query to select cus_id/Bill_no which is in status open (b_status = 'O') and having more than two active subscriber (i.e. S_status = 'A') in it ( i.e. more the two subscribers in same bill). select s.cus_id from subsc s where exists (select 1 from bill where bill_no = s.cus_id and b_status = 'O') and s_status = 'A' group by s.cus_id having count(sub_no) = 2 Problem : The above query will give the cus_id (or rather bill_no) which are in open status (b_status ='O) and which are having TWO ACTIVE Subscribers (s_status ='A') in it. However, this query will also lists the cus_id/bill_no which are having more than TWO subscribers in it (but only two subscriber will be in Active status (s_status = 'A') and the others will be in s_status = 'C' or s_status = 'S'. Help needed: I want to write a query which will fetch ONLY the cus_id/bill_no which are in open status (b_status ='O') and which are having ONLY TWO ACTIVE subscribers (s_status ='A') in it. B--> If I include the sub_no in the above query then NO row are returned. select s.cus_id, s.sub_no from subsc s where exists (select 1 from bill where bill_no = s.cus_id and b_status = 'O') and s_status = 'A' group by s.cus_id, s.sub_no having count(sub_no) = 2 Help needed: I want to modify the above query which will fetch ONLY the cus_id/bill_no which are in open status (b_status ='O') and which are having ONLY TWO ACTIVE subscribers (s_status ='A') in it ALONG with the sub_no. Thanks a lot in advance. Regards, Nitin
Can a varchar be a primary key?
What is a constraint. Types of constraints ?
5 Answers Accenture, BirlaSoft,
What is autocommit sql?
Oracle (3253)
SQL Server (4518)
MS Access (429)
MySQL (1402)
Postgre (483)
Sybase (267)
DB Architecture (141)
DB Administration (291)
DB Development (113)
SQL PLSQL (3330)
MongoDB (502)
IBM Informix (50)
Neo4j (82)
InfluxDB (0)
Apache CouchDB (44)
Firebird (5)
Database Management (1411)
Databases AllOther (288)