|
发表于 2020-7-7 23:45:01
|
显示全部楼层
//这样的t-sql一定是错的,因为sumtable和name_table在库中不存在
//你以前的工作是将数据集放在内存中,在运行web的服务器中
//可能和数据服务器都不在一台机器上了
select = "select ymd,sum,devname from sum_table,name_table where sum_table.devid=name_table.devid";
//所以你这样想直接再填充无论如何时都不可能成功
da = ????? //这里应该怎么写?
System.Data.DataTable result_table = new System.Data.DataTable();
da.Fill(ds, "result_table");
//如果一定想这样做,来让我们想想我们有的是什么,我们需要的是什么
//我们在web服务器上有两个dataset ,我们想要的是另一个table
可以从sum_table克隆一个结构,加入新的字段,然后将两个表的记录一条条插入
如果sum_table不会在后面被使用,那么可以直接给它新加一个字段,然后一条条更新记录
无论如何,这都不是一个好主意,好多orm支持关系映射,但我个人并不喜欢这样,关系型数据库的优点在于它是"关系型的"
首先问问我这种思路是否可行?
我查了相关问题,好像可以用一条sql语句来完成,不过我觉得可读性不高。
我是新手,请多帮忙。
///其实真的更好的解决办法是使用tans-sql直接体现它们的关系并解决
现在有两个结果集
select ymd,sum(stoptim) as sum ,devid
from dev_bandata
group by ymd,devid
select devid ,devname
from dev_bandata
看看两个表现在是什么关系
它们来自一个数据表
可能是一对一映射/一对多/多对一/多对多
从你的原文中也看不出关系
我们假设是一对一的
那么
简单的改一下
select ymd,sum(stoptim) as sum ,devid,devname
from dev_bandata
group by ymd,devid,devname
即可
|
|