这就是我 |
|
用户登陆 |
|
最新公告 |
数据载入中,请稍候...... |
站点日历 |
数据载入中,请稍候...... |
最新日志 |
数据载入中,请稍候...... |
最新回复 |
|
最新留言 |
数据载入中,请稍候...... |
日志搜索 |
数据载入中,请稍候...... |
|
友情链接 |
|
其他信息 |
|
|
|
|
|
|
|
|
·修改点房网的点房指数问题 -|cloudy 发表于 2006-6-26 15:22:19 |
点房网的点房指数有点问题,同一个楼盘后面的备注不一样的时候,因为显示的只是楼盘名称,这样就变得有重复的楼盘名称出现了,老板要求改正这一点。
其实就这一点来说,自己是早有发现的,也有办法可以解决,只是由于各种因素的影响,一直没有去处理,今天得好好想想去改一改了。
原来只是简单使用group by排除重复的housename值。 现在看来不行,要先判断housename中含有“(”,即有备注的,要先去掉备注 然后再进行group by
思路是先在where子句中用instr函数判断是否含有“(”,含有的,使用left函数取其前面的楼盘名称;不含有的,直接取楼盘名称。
但是这样就产生了两个select语句,只好使用union进行联合查询,这也没有什么问题。 两个select语句都先用group by过虑一下重复的值,使用union联合的时候会自动再过滤重复值(ps:union all就不会过滤重复值)
修改过程中还发现,在access中能正常使用instr([housename],'(')函数,但是MSSQL却不支持,还好有CHARINDEX('(',[housename])可以代替。
sql语句编好了,用ASP连接rs.open sql,conn,1,1 无论open后的参数如何换,rs.recordcount总是等于-1
最后还要在open语句前加上这一句才搞定了.
rs.CursorLocation = 3
但还是不明白为什么? |
[阅读全文 | 回复(0) | 引用通告 | 编辑] |
|
|
|
|
|
| |