如何从查询结果中再进行查询?

烤火的鱼 2003-10-17 08:40:16
许多查询都是在第一个查询的基础上进行的,比如:
select 字段列表1 from (select 字段列表2 from …) where …,很显然,字段列表1是建立在字段列表2的查询基础上的,这样的比较容易实现,因为是一个语句就完成了,我现在碰到的问题是首先要保存字段列表2的查询结果到内存中,其他还有很多查询都建立在字段列表2的基础上,好象应该叫视图吧,也就是说,我首先要查询一个表出来,如select 字段列表2 from … into 什么的,假如结果在 表2中,然后我再进行其他查询,如select 字段列表n from 表2等等,不知道我有没有说清楚,反正就是将第一次查询结果保存起来,其他的查询建立在第一次的结果之上,也用select语句从第一个结果中查询,谁能告诉我应该怎么做?
...全文
111 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
yaotiebing 2003-10-17
  • 打赏
  • 举报
回复
你可以直接在数据库中建一个视图呀 将来维护也方便
zhongwanli 2003-10-17
  • 打赏
  • 举报
回复
up!
123456754321 2003-10-17
  • 打赏
  • 举报
回复
可以考虑存储过程,先select * into 表2 from 表1,再 select * from 表2
烤火的鱼 2003-10-17
  • 打赏
  • 举报
回复
思归兄和^o^的很有道理,楼上的兄弟不能满足要求,因为查询出来后就只有手工一个一个进行比较了,我希望能再次用select语句从结果中得到新的结果。
cherry627 2003-10-17
  • 打赏
  • 举报
回复
将字查询中的数据先查出,用sqldataAdpater将数据填充到一个dataset中(sqldataAdpater.Fill(dataset,"表名")),其它的查询可以利用这个dataset中任何字段数据,只要用dataset.tabel[1].row[第几个字段(由0开始)][“字段名称”],就可以取出其中内容。
shajie 2003-10-17
  • 打赏
  • 举报
回复
up
acewang 2003-10-17
  • 打赏
  • 举报
回复
private void MakeDataView()
{
DataView dv = new DataView();

dv.Table = DataSet1.Tables["Suppliers"];
dv.AllowDelete = true;
dv.AllowEdit = true;
dv.AllowNew = true;
dv.RowFilter = "City = 'Berlin'";
dv.RowStateFilter = DataViewRowState.ModifiedCurrent;
dv.Sort = "CompanyName DESC";

// Simple bind to a TextBox control
Text1.DataBindings.Add("Text", dv, "CompanyName");
}
joachern 2003-10-17
  • 打赏
  • 举报
回复
gz
softye 2003-10-17
  • 打赏
  • 举报
回复
up
saucer 2003-10-17
  • 打赏
  • 举报
回复
use DataView's RowFilter or DataTable's Select

note, to use DataView, you need to do something like

DataView dv = DataTable1.DefaultView;
dv.RowFilter = "字段列表1 = 'a'";

...//use it


dv.RowFilter = "字段列表1 = 'a' AND 字段列表2 = 'b' ";
...//use it

....

110,499

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧