ASP中对SQL语句查询结果进行二次筛选

来源:百度知道 编辑:UC知道 时间:2024/05/12 03:45:33
比如表中有五个单位:1,2,3,4,5

还有10个反馈对像单位:一,二,三,四,五,六,七,八,九,十

然后我要做一张WEB的汇总表,表的竖列为五个单位,行为10个反馈对像,每一个单元格则是反馈内容。

最笨的方法:select * from 表名 where(year1='2006' and dw='1' and fk='一') 然后在第一行第一列的单元格里填入结果。

这样一来就要写50个SQL语句,生成50个对像。天,这是杀手程序了。。。。

如果使用select * from 表名 where(year1='2006' and dw='1'),然后用数据指针循环,把这10条记录一个记录一个记录的循环写出来,但问题是我的WEB表是固定格式的,和数据库里的顺序并不一样。

我记得SQL语句中好像有一个语法是对查询后生成的对集合进行筛选的,就是对这10条记录按筛选条件取一条记录。但不记得怎么写,书上也没找到。

换而言之就是对SQL生成的结果对像集合进行二次查询。

比如:select * from 表名 不写条件,那么会生成很多条记录。

在这个记录集合中,我要筛选出 字段=1 and 字段=2的记录。
补充:
字段一:单位 (有五个单位1、2、3、4、5)
字段二:反馈单位(有十个单位一~十)

然后我要生成一张WEB表,表的列是单位,表的行是反馈单位,每一个单元格是反馈内容

我不想使用:select * form 表名 where 单位=X and 反馈单位=Y的写法,因为这样要生成那个WEB表,要写50个SQL语句。

如果使用 select* form 表名 where 单位=X的写法,用指针循环的办法,读出的顺序和我的WEB表内容的排序又不一样。

如何才能把SQL查询出的结果集合再进行筛选?

问题补充二:

答XHBGQ 表结构是这样的。<

不知道这句是否符合你的要求

sql = "declare @sql varchar(4000) set @sql = 'select 反馈单位' select @sql = @sql + ',max(case 单位 when '''+单位+''' then 反馈内容 end) as '+单位 from (select distinct 单位 from XHBGQ) as a set @sql = @sql+' from XHBGQ group by 反馈单位' exec(@sql)"

rs.open sql,conn

rs记录集里保存的,就是你要的表格。

现在大概知道情况了:
总共就是一个表,表里面有2个字段:单位、反馈单位。
表结构--
单位 反馈单位
1 一,二,三
2 一,二,三
3 一,二,三
4 一,二,三
5 一,二,三
请说明是不是这样?
另外单位和反馈单位有什么联系,你要达到的目的?

表设计有问题,描述更成问题

现在大概知道情况了:
总共就是一个表,表里面有2个字段:单位、反馈单位。
表结构--
单位 反馈单位
1 一,二,三
2 一,二,三
3 一,二,三
4 一,二,三
5 一,二,三
请说明是不是这样?
另外单位和反馈单位有什么联系,你要达到的目的?????????

馈对像单位:一,二,三,四,五,六,七,八,九,十
然后我要做一张WEB的汇总表,表的竖列为五个单位,行为10个反馈对像,每一个单元格则是反馈内容。

把库结构描述一下,笨蛋