论坛: 编程破解 标题: ASP求助!!!!急死~~~~ 复制本贴地址    
作者: staryl [staryl]    论坛用户   登录
小弟不才~~刚学了ASP,对SQL语句查询不是很了解,希望各位高手能帮我把代码补全并帮我改改错!谢谢各位了~~~敬礼!

如题:现有表1:Announce(招标通告),表二:Zone (地区代码),表Announce的字段包括:TitleC(标题),CreateDate(发布日期),ZoneId(地区编码)等,表Zone的字段包括:ZoneId(地区编码),ZoneNm(地区名称)等。请编写一段程序将南京地区的通告按发布时间倒序排列后的前5条通告标题以表格形式显示在网页上,其中数据库为SQL Server,数据库名DataBase ,数据库所在的机器名Host.
以上是我参加中国招投标网程序员入职考试中的一题,其他代码我能写出来,可是对与数据库的查询代码写不出来,麻烦你帮我补下!顺便看看其他地方还有没有错误!!!!
<html>
<body>
<% 
'建立连接对象db,连接数据库DataBase
dim db,conn
conn="DBQ="&server.mappath("DataBase.mdb"); Driver={SQL Server}
set db=server.createobject("ADODB,connection")
db.open"database"
'以下是查询数据库,建立recordset对象rs
dim strsql,rs
――――――――――――――――――――――
strsql="select

                                这段SQL代码我写不了!比较复杂~~~帮我补下~

――――――――――――――――――――――
set rs=db.execute(strsql)
%>

<table border="1" align="center">
<% Do while not rs.EOF %>    '只要不是结尾就循环
    <tr>
        <td><%=rs("ZoneId")%></td>
        <td><%=rs("ZoneNm")%></td>
        <td><%=rs("Announce")%></td>
        <td><%=rs("TitleC")%></td>
        <td><%=rs("CreateDate")%></td>
    </tr>
<%
rs.movenext        '将指针移动到下一个目录
loop
%>
</table>
</body>
</html>

地主 发表时间: 06-11-15 15:31

回复: staryl [staryl]   论坛用户   登录
另外,南京的程序员愿意帮助我学习的请留下QQ号,或者加我QQ55791824~~~
谢谢你们

B1层 发表时间: 06-11-15 15:33

回复: NetFog [q70213526]   版主   登录
Select Top 5 A.TitleC,(Select Z.ZoneNm From Zone as Z Where Z.ZoneID=A.ZoneID) as ZoneName,A.CreateDate From Announce as A Where A.ZoneID=南京的ID

PS:你调用有问题
<td><%=rs("Announce")%></td>这个,有这个字段吗??


楼主得好好学点东西了哇。


B2层 发表时间: 06-11-16 00:03

回复: NetFog [q70213526]   版主   登录


SQL Server的连接你也写错了。回头看一下的时候。。唉。。

楼主多练练吧。。

B3层 发表时间: 06-11-16 00:06

回复: staryl [staryl]   论坛用户   登录
惭愧啊!!谢谢你了

B4层 发表时间: 06-11-16 19:38

回复: windflower [windflower]   论坛用户   登录
select top 5 title from announce where zoneid =some (select zoneid from zone where zoneNM='南京') order by createDate Desc

B5层 发表时间: 06-11-20 15:08

回复: NetFog [q70213526]   版主   登录
楼上喜欢使用字符做为查询条件.俺喜欢用数字..,数字准确且快.

PS:楼上没必要用some了吧.南京就只有一个.而且你只列出了title,他在输出时需要输出 地区名,还有时间.

[此贴被 NetFog(q70213526) 在 11月20日17时31分 编辑过]

B6层 发表时间: 06-11-20 17:27

回复: windflower [windflower]   论坛用户   登录
不是我喜欢用字符
你如果知道了南京的ID
还需要第二个表做联接么?

some不加可以
加了表明集合操作

B7层 发表时间: 06-11-23 15:01

回复: NetFog [q70213526]   版主   登录
如果我知道南京ID,你觉得不需要多表链接..那么地区名怎么显示?

查资料得IBM DB2 SQL中的some和all的用法是一样的.如SELECT  *  FROM  AAA  WHERE  AGE>ALL (SELECT  OLD  FROM  BBB),根据两者的语意some和all的用法也应该是一样.

"不用some"比"用some"好处多.理解一下some后面的子查询返回的记录吧,是否唯一或者是记录集.网上介绍如果用some的我就查到IBM DB2的,其他的没找到.用的人很少.因为没必要用,影响可读性的同时,效率并不见得高..

本来写了一堆.发现自己表达能力有限.不说了,越讲越乱.

B8层 发表时间: 06-11-27 01:24

回复: windflower [windflower]   论坛用户   登录

引用:

请编写一段程序将南京地区的通告按发布时间倒序排列后的前5条通告标题以表格形式显示在网页上



这句话隐含的是知道zoneNM,而不是zoneID,而且它只要求显示标题。

my age >some your age  我至少比你们其中一人大
my age >all your age  我比你们任何一人都大



B9层 发表时间: 06-11-27 22:20

回复: NetFog [q70213526]   版主   登录
什么乱七八糟的.

睡觉

结贴.

B10层 发表时间: 06-11-27 23:27

论坛: 编程破解

20CN网络安全小组版权所有
Copyright © 2000-2010 20CN Security Group. All Rights Reserved.
论坛程序编写:NetDemon

粤ICP备05087286号