Вот мои таблицыSQL Group по нескольким столбцам и несколько таблиц
CREATE TABLE Course(Cno CHAR(6), Cname NVARCHAR(20) NOT NULL,PRIMARY KEY(Cno))
CREATE TABLE SC(Sno CHAR(7) NOT NULL,Cno CHAR(6) NOT NULL,Grade TINYINT,
PRIMARY KEY(Sno, Cno),
FOREIGN KEY(Sno) REFERENCES Student(Sno),
FOREIGN KEY(Cno) REFERENCES Course(Cno)
)
стол курс
Cno Cname
------------
C001 Math
C002 CS
C003 Database
стол SC
Sno Cno Grade
-------------------
1 C001 80
2 C002 90
2 C003 70
3 C002 60
Хотите ...:
Cno Cname Number
-----------------------
C002 CS 2
C001 Math 1
C003 Database 1
этот код работал
select top 3 with ties Course.Cno, Course.Cname, count(SC.Cno) AS Number
from Course left join SC
on Course.Cno = SC.Cno
group by Course.Cno, Cname, Semester
order by count(SC.Cno) desc
, но если я использую "GoUp по Course.Cno", не работал ..
Почему я должен добавить "CNAME, Семестр"?
Я пробовал на mysql работал..бум sql server 2012 нет.
Какие СУБД вы используете? SQL Server? –
yep..mysql работает – 0neSe7en