※ 引述《TCH (最無價值單身漢)》之銘言:
: ※ 引述《diamondking (天劍流星)》之銘言:
: : 其實有比較簡單的寫法:
: : select a.StuName,
: : sum(datediff(hh,b.StartTime,b.EndTime)) Hours,
: : sum(datediff(hh,b.StartTime,b.EndTime))*100 Bonus
: : from Student a left outer join Spell b on a.StuID=b.SpellStuID
: : where b.YearMonth=200708 and a.UnitID=123
: : group by a.StuName
: : 大致上是這樣,t-sql的語法不是很肯定,有錯請指正
: 感謝...
: 不過這樣的結果,在SQL Server執行卻只有顯示出現在Spell中的資料
: 我希望有此班級內全部人的資料,因為是 left join 所以右邊會有 null,都要顯示
: ps:我好像試出來了,明天再PO上來
: (因為是胡亂試出來的,自己現在也忘了作法 ^^|||)
我是用「left outer join」,不是「left join」喔…
outer join就能顯示所有資料了,應該不會只有Spell內的資料,
你有空再試試好了
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 218.167.120.203