C# 从2 datatable填充网格或在运行时添加列
我有三张桌子 查询详情 教师 和FeeDetail 我必须出示带课程费、剩余费用和押金的学生信息 我正在使用查询C# 从2 datatable填充网格或在运行时添加列,c#,asp.net,sql,oracle,C#,Asp.net,Sql,Oracle,我有三张桌子 查询详情 教师 和FeeDetail 我必须出示带课程费、剩余费用和押金的学生信息 我正在使用查询 select Name,MobileNo,CourseName,CourseFees from [AsahEnquiry].[dbo].EnquiryDetail e,[AsahEnquiry].[dbo].CourseMast c where e.CourseId=c.CourseId AND Admitted='Yes' 这就产生了结果 Name MobileNo
select Name,MobileNo,CourseName,CourseFees
from [AsahEnquiry].[dbo].EnquiryDetail e,[AsahEnquiry].[dbo].CourseMast c
where e.CourseId=c.CourseId AND Admitted='Yes'
这就产生了结果
Name MobileNo CourseName CourseFees
a 2222222222 Sinor Programer 30000
as 3333333555 Junier Programer 15000
as 8888888888 Junier Programer 15000
a 1221111111 Junier Programer 15000
i 4444444444 Junier Programer 15000
ku 8888777777 Sinor Programer 30000
er 6667777777 Sinor Programer 30000
a 5555555555 Junier Programer 15000
yuy 7888888888 Junier Programer 15000
FeeDeposite FeeRemaining
16000 14000
20000 10000
我还有一个问题
select sum(FeeDeposite) as FeeDeposite,
(CourseFees-sum(FeeDeposite)) as FeeRemaining
from [AsahEnquiry].[dbo].Feedetail f
join [AsahEnquiry].[dbo].EnquiryDetail e on f.EnquiryID=e.EnquiryID
join [AsahEnquiry].[dbo].CourseMast c on e.Courseid=c.CourseID
group by f.EnquiryId,c.CourseFees,e.Name
这就产生了结果
Name MobileNo CourseName CourseFees
a 2222222222 Sinor Programer 30000
as 3333333555 Junier Programer 15000
as 8888888888 Junier Programer 15000
a 1221111111 Junier Programer 15000
i 4444444444 Junier Programer 15000
ku 8888777777 Sinor Programer 30000
er 6667777777 Sinor Programer 30000
a 5555555555 Junier Programer 15000
yuy 7888888888 Junier Programer 15000
FeeDeposite FeeRemaining
16000 14000
20000 10000
我想在一个网格中显示它。。
有人能给我一个简单的问题吗。。。
或者我可以在运行时添加其他查询结果吗?创建两个视图,而不是尝试将它们转换为单个查询(由于第二个查询中的聚合,您将无法执行)。然后可以创建第三个视图以将两个视图连接在一起。简化查询,而不是尝试创建一个将来很难维护的大型查询 在页面呈现期间合并数据也是一个坏主意,让SQL server为您完成这项工作 p、 我认为CourseID是连接这两个视图的关键,因此请确保聚合视图(第二个查询)的SELECT中有此字段。同时使用左连接,否则可能会丢失记录 编辑:感谢您对数据进行格式化,现在更有意义了。这是两个不同的查询,应该分开保存。第一个查询显示注册课程的人以及他们支付的费用。第二个查询显示每门课程的预期利润金额以及剩余金额
你想实现什么?我已经添加了查询选择名称,MobileNo,CourseName,CourseFees,sum(FeeDeposite)作为FeeDeposite,(CourseFees sum(FeeDeposite))作为FeeRemainding from[AsahEnquiry].[dbo]。FeedTail f join[AsahEnquiry].[dbo]。InquiryDetail e on f.inquiryId=e.inquiryId join[AsahEnquiry].[dbo].CourseMast c on e.Courseid=c.Courseid组由f.InquiryId、c.CourseFees、e.Name、e.MobileNo、c.CourseName创建,但它没有提供不提交任何费用的学生信息