2014-04-26 52 views
0

例如,具有表名稱部門GROUP BY帶有具體列名的SQL

//DEPARTMENT 
D# 
-------- 
1 
2 
3 

現在有一個項目表

//Project 
P#  D# 
----------- 
1  1 
2  1 
3  2 
4  1 

所以,我應該如何通過帶有具體列名時,顯示使用組i使用提示所有的信息,它應該是類似的

Enter Department Number : 1 

D#  total project 
--------------------- 
1   3 

到目前爲止我做了這樣的

ACCEPT dno PROMPT 'Enter Department Number: ' 
SELECT DNAME FROM DEPARTMENT WHERE D#=&dno; 
SELECT count(*) from PROJECT where D#=&dno; 

回答

0

使用本

select DNAME, count(Project) AS "total project" FROM DEPARTMENT d, PROJECT p 
WHERE d.dno=p.dno and D.DNO=&dno group by DNAME; 

獲得總共只

select count(Project) AS "total project" FROM DEPARTMENT d, PROJECT p 
WHERE d.dno=p.dno and D.DNO=&dno group by DNAME; 
+0

計數一起,但我想打印特定項目總列。不可能? – user3553846

+0

如果你想要總數只有然後從選擇刪除Dname .... –

0

要做兩個表之間的連接,

ACCEPT dno PROMPT 'Enter Department Number: ' 
SELECT DNAME, count(*) 
    FROM DEPARTMENT d, PROJECT p 
    WHERE d.dno=p.dno and d.dno=&dno 
    group by d.DNAME; 

編輯

顯示dnoDNAME與項目

ACCEPT dno PROMPT 'Enter Department Number: ' 
SELECT d.dno,DNAME, count(*) as 'total' 
    FROM DEPARTMENT d, PROJECT p 
    WHERE d.dno=p.dno and d.dno=&dno 
    group by d.dno,DNAME; 
+0

但我想打印具體的總項目列。不可能? – user3553846

+0

伯爵(*)將爲您做到這一點。 –

+0

在這個查詢中,它將計算由DNAME的項目組' –