Mysql的題,有兩個表:
Student表
ID Name
1 Alex
2 Sam
3 Alex
4 Amy
5 Chris
backlog表
Student_ID Sub_ID
1 math
1 PE
2 math
2 CS
3 PE
4 Chinese
要查詢出有課的學生名字,按字母排序,顯示出兩種方式均可
方式一:
Alex1
Alex3
Amy
Sam
方式二:
Alex
Alex
Amy
Sam
有啥簡單的寫法嗎?謝謝各位,在線結貼~~~
uj5u.com熱心網友回復:
select b.name from backlog a inner join Student b on a.Student_ID = b.id order by b.nameuj5u.com熱心網友回復:
這個不行吧,這樣出來的Sam會有兩行。這個問題的難點是,正常的同學不管有幾門課,只要顯示一行名字就行,而叫Alex的有兩個人,重名了,學號不一樣,這兩個名字都要顯示出來uj5u.com熱心網友回復:
說一下轉的規則是什么 。uj5u.com熱心網友回復:
一個是學生表,一個是學生排課表,現在要抓哪些同學有課。如果沒有重名的人,就很簡單,distinct一下就可以,現在有重名的,重名的怎么正確抓出來,按要求要么同名的名字后再加個學號區分一下,如果不加學號也能抓出來重名的有課的學生也行
uj5u.com熱心網友回復:
SELECT b.name FROM backlog a inner join
student b on a.Student_ID=b.id group by b.id order by b.name;
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/181549.html
標籤:基礎類
上一篇:matlab資料擬合
下一篇:在線急等一sql陳述句!!!
