蓝森林首页 | 返回主页 | 本站地图 | 站内搜索 | 联系信箱 |
 您目前的位置:首页 > 自由软件 > 技术交流 > 应用编程


    

蓝森林 http://www.lslnet.com 2006年8月25日 8:28

[ASP]关于多字段判断数据重复的值

现在有一个表,有字段A(代表产品类别,有4种类别),字段B(代表产品包装,有6种包装形式),字段C(代表产品口味,有7种口味)。

现在有以下的值:

字段A                  字段B       字段C

0                           1               0
0                           0               0
0                           1               1
1                           2               0
1                           2               1
1                           0               0

如何筛选出A与B组合后不重复的值?像上面有6组值,实际上根据A与B的组合判断不重复的值后只有4组,如下:

字段A                  字段B       字段C

0                           1               0
0                           0               0

1                           2               0

1                           0               0

有两个是重复的,不读出。因为程序已经写好,不想改程序,不知道用ASP可以实现这种的筛选?

如果根据字段A的不同我知道用:
sql="select distinct A from table"
就可以读取,要根据两个字段A与B如何实现?

请大家级点思路!

SELECT DISTINCT a,b,c FROM table WHERE (a>-1 and b>-1)

只是随手写了一下,没作过任何测试

SELECT DISTINCT a,b,c FROM table
我试了用这个写,开始是提示有错误,后来再细检查,重新写,结果读出来的数据最后少一个,就是字段A与B不成组,不成对,正常是应该成对的,最后的A有值,B没有,实际上数据里面有.

[code]
set rs=server.createobject("Adodb.recordset")
sql="select distinct classname,bzs from thjt_News where yy='cn'"
rs.open sql,conn,1,1
do while not rs.eof
set rs1=server.createobject("Adodb.recordset")
sql1="select * from thjt_News where (classname="&rs("classname")&" and bzs="&rs("bzs")&") and yy='cn'"
rs1.open sql1,conn,1,1
do while not rs1.eof
c=rs1("title")
response.write c
response.write "<br>"
rs1.movenext
loop
rs.movenext
loop
[/code]

为何RS1读出的值还是全部的数据的?没弄懂得,我输入上面的数据,这回是正常的,读取的是不重复的几组值,是正常的8组,但要再读出这8组的相信信息?怎么读取?我中间的读取不正确?读取的还是全部的数据,感觉后面的判断条件没有起作用?




Copyright © 1999-2000 LSLNET.COM. All rights reserved. 蓝森林网站 版权所有。 E-mail : webmaster@lslnet.com