Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net sql查询-连接以获得以下结果_Asp.net_Sql - Fatal编程技术网

Asp.net sql查询-连接以获得以下结果

Asp.net sql查询-连接以获得以下结果,asp.net,sql,Asp.net,Sql,我有两个表,从这两个表的结果,我需要得到第三个表,我的第一个表查询结果如下 select categeoryid,EmployeeId,SUM(Amount)as advance from ExpenditureDetails where Expenditurefor='Travel' and EmployeeId='TFIPL201145' group by categeoryid,EmployeeId categeoryid EmployeeId

我有两个表,从这两个表的结果,我需要得到第三个表,我的第一个表查询结果如下

select categeoryid,EmployeeId,SUM(Amount)as advance
from ExpenditureDetails where Expenditurefor='Travel' and EmployeeId='TFIPL201145' 
group by categeoryid,EmployeeId 

categeoryid            EmployeeId           advance
----------------------------------------------------
Local_IPL              TFIPL201145          1000
Project_Audio release  TFIPL201145          566565
Project_Cricketscore   TFIPL201145          441898
Project_mayajal        TFIPL201145          1100
Project_Tennis         TFIPL201145          8949
第二个表的结果如下

select categeoryid,EmployeeId,SUM(Amount)as submitted_amt
from ExpenditureTravelling where EmployeeId='TFIPL201145'  
group by categeoryid,EmployeeId

categeoryid          EmployeeId     submitted_amt
-------------------------------------------------
Event_Golf           TFIPL201145    36456
Events_Hokey         TFIPL201145    1303
local                TFIPL201145    25000
Local_IPL            TFIPL201145    1169488
Project              TFIPL201145    16000
Project_Cricketscore TFIPL201145    216661
Project_harris       TFIPL201145    53453
Project_mayajal      TFIPL201145    1500
Project_Tennis       TFIPL201145    8949
我想我的结果表应该是…加入2表

categeoryid               EmployeeId        advance      submitted_amt
----------------------------------------------------------------------
Event_Golf                TFIPL201145       0            36456
Events_Hokey              TFIPL201145       0            1303
local                     TFIPL201145       0            25000
Local_IPL                 TFIPL201145       1000         1169488
Project                   TFIPL201145       0            16000
Project_Cricketscore      TFIPL201145       441898       216661
Project_harris            TFIPL201145       0            53453
Project_mayajal           TFIPL201145       1100         1500
Project_Tennis            TFIPL201145       8949         8949

你能为这个查询提供帮助吗…要得到结果…

你必须使用两个查询之间的相对链接来连接它们。据我所知,EmployeeId是一个很好的候选人。比如:

select categoryId, EmployeeId, SUM(Amount) as advance, Travelling.submitted_amt
from ExpenditureDetails inner join
 (select CategoryId, EmployeeId, sum(Amount) as submitted_amt
  from ExpenditureTravelling) as Travelling on
 ExpenditureDetails.EmployeeId = Travelling.EmployeeId
where
  (EmployeeId='TFIPL201145') group by....

希望这有帮助。

选择a.categoryId、a.EmployeeId、isnullsuma.Amount、0作为提交金额, IsNull按b.categoryId、b.EmployeeId选择支出明细b中的sumb.amount,其中b.categoryId=a.categoryId和b.ExpertitureFor='Travel'组中的b.categoryId、b.EmployeeId、0作为预付款 从ExpertitureDetails a 其中a.EmployeeId='TFIPL201145'
a.CategoryId,a.EmployeeId分组

请您尝试将问题的格式设置为更具可读性一点好吗?现在解决这个问题比构建SQL要困难得多。嗨,joachim Isaksson,现在你可以阅读我的查询了吗?