2016-10-03 77 views
0

我有一个表"tblStudent"有很多列像"name", "branch_id", "status_id", etc "tblBranch""tblStatus"是子表"tblStudent"的子表。 我想每个分支的学籍细节即如何从多个表使用订单获取记录

**Branches**  **Apply**  **Registered**  **Rejected** 
branch1    100    80    20 
branch2    150    135    15 
branch3    120    115    5 
+0

加入样品表中的数据也一样,产生这一结果。同时向我们展示您当前的查询尝试。并标记你正在使用的dbms。 – jarlh

+0

阅读'JOIN':http://stackoverflow.com/documentation/sql/261/join#t=201610030802306534234 – DanMan

回答

0

您可以寻找这样的:

SELECT b.Branches, 
     SUM(CASE WHEN status.stausName ='Apply' THEN 1 END) AS Apply, 
     SUM(CASE WHEN status.stausName ='Registered' THEN 1 END) AS Registered, 
     SUM(CASE WHEN status.stausName ='Rejected' THEN 1 END) AS Rejected 
FROM tblStudent s 
INNER JOIN tblBranch b ON b.ID=s.branch_id 
INNER JOIN tblStatus status on status.ID =s.status_id 
GROUP BY Branches 
+1

是的确切,我不能解释我的查询,但你得到它并解决我的问题thankxxx –

+0

如何我可以使用LINQ查询得到相同的结果吗? –

+0

LINQPad可能会帮助你在这个https://www.linqpad.net/ –