查询语句出错,两个记录查出三条结果?
strParent的值是42,43 可查出来确是42,42,43 不知道哪里出错了,大家帮我看看,谢谢
If ParentID <> 0 And Len(strParent) <> 0 Then
SQL = "SELECT ClassID,ClassName,HtmlFileDir,UseHtml FROM [NC_Classify] WHERE ClassID in(" & strParent & ")"
Set rsCurrent = Newasp.Execute(SQL)
If Not (rsCurrent.EOF And rsCurrent.BOF) Then
Do While Not rsCurrent.EOF
strContent = strContent & "<a href='" & ChannelDir & "list.asp?classid=" & rsCurrent("ClassID") & "'>" & rsCurrent("ClassName") & "</a>" & Compart & ""
rsCurrent.MoveNext
Loop
End If
rsCurrent.Close
Set rsCurrent = Nothing
End If
问题点数:20、回复次数:9Top
1 楼liruiyuan(我爱佳阳...)回复于 2006-03-11 01:21:06 得分 0
strParent 是索引么?值是否具有唯一性?Top
2 楼duoduobaba(避雷针)回复于 2006-03-11 02:06:57 得分 10
如果ClassID是唯一的那把strParent的值response.write出来,肯定不是两个Top
3 楼ybfqlyq(Rossy|http://blog.ybfq.com)回复于 2006-03-11 08:52:16 得分 0
用DISTINCT吧。
select distinct * from.....Top
4 楼xiaogu1234(小古)回复于 2006-03-11 10:34:52 得分 0
同意楼上的方法。
你看看数据库里,ClassID 为42或者43的是不是有三条记录,Top
5 楼friend413()回复于 2006-03-11 20:34:30 得分 0
ClassID是唯一的,response.write strParent 是42,43
可查询结果就是3条Top
6 楼wanghui0380(放歌)回复于 2006-03-11 23:06:44 得分 0
response.write rs.count // 显示记录数先
如果确实是3条记录,ok,只能猜测你的classid不是主键 或 你并不是使用的基本表,而是使用的是视图(该视图是两表查询,并且为一对多关系)Top
7 楼friend413()回复于 2006-03-13 20:12:35 得分 0
查出来记录确实是3条,而classid也是主键,NC_Classify表也是基本表!
Top
8 楼QQgenie(妖魔鬼怪)回复于 2006-03-14 00:22:49 得分 10
在库里用你的sql建一个查询,看是不是3条.Top
9 楼xxuu503(中国没有prison break只是因为the company不让拍)回复于 2006-03-14 09:00:56 得分 0
classid为42的有两条Top




