数据库里有2个表  a和ba表是分类  b表是详细值
a表有a1字段
b表有a1 b1 b2等若干字段现在要做一个datagrid
要求是显示2列
1列是a表的某个字段a1
2列是a表的某个字段a1在b表中对应的值的和请写出sql语句。SqlConnection MyConnection = new SqlConnection("server=server2k;database=store;User Id=sa;");
SqlCommand MyCommand = new SqlCommand("SELECT  .........", MyConnection);
MyConnection.Open();
CompanyDataGrid.DataSource = MyCommand.ExecuteReader(CommandBehavior.CloseConnection);
CompanyDataGrid.DataBind();

解决方案 »

  1. select a.al,sum(b.b1) from a 
    inner join b on b.a1 = a.a1
    group by a.al
      

  2. select a.a1,sum(b.b1,b.b2) from a,b where b.a1=a.a1
      

  3. select a.a1,sum(b.b1),sum(b.b2) from a,b where b.a1=a.a1
      

  4. 问题搞定   谢谢 brightheroes(闭关|那一剑的风情) 奇怪的是如果用sum那么如果合计为85的就成了8500?select ContGroups.ContactGroupName , count(Messages.ContactGroupID) from ContGroups inner join Messages on ContGroups.ContactGroupID=Messages.ContactGroupID group by ContGroups.ContactGroupName
      

  5. select a.al,sum(b.b1) from a 
    inner join b on b.a1 = a.a1
    group by a.al这个应该!
      

类似问题 »