一个SQL查询出来记录过多时如何才能控制

fanhailin 2003-10-19 10:53:08
比如一个SQL查询出来10 条记录,我只要让它返回一条记录就可以了这样的语句怎么实现
我试过用 Select top 1 from table name 可是没有用
...全文
83 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
golden24kcn 2003-10-21
  • 打赏
  • 举报
回复
我写的一个论坛的代码,用的是分页,给你看看吧

'Dim Rst As ADODB.Recordset
Dim RstChild As ADODB.Recordset
Dim SQL As String
Dim I As Integer
Dim J As Integer
Dim Nod As Node
Dim NodChild As String

If lstBBS.Selected = -1 Then Exit Sub
tvwCap.Nodes.Clear
Set RstBBs = Nothing
Set RstBBs = New ADODB.Recordset
RstBBs.CursorLocation = adUseClient
SQL = "select * from bbsmatter where bbsid=" & BBS(lstBBS.Selected)
RstBBs.Open SQL, Conn, adOpenStatic, adLockReadOnly, adCmdText
RstBBs.PageSize = 8

Page = 1
If RstBBs.EOF Then GoTo 1
For I = 1 To RstBBs.PageSize
Set Nod = tvwCap.Nodes.Add(, , "n" & CStr(RstBBs.Fields("id")), RstBBs.Fields("caption") & _
" 发表于" & RstBBs.Fields("date") & " " & RstBBs.Fields("time") & " 阅读" & RstBBs.Fields("reading") & _
" 回复" & RstBBs.Fields("return") & " 作者 " & CStr(RstBBs.Fields("userid")), Val(RstBBs.Fields("imageindex")))
Set RstChild = New ADODB.Recordset
RstChild.CursorLocation = adUseClient
SQL = "select * from bbsreturn where bbsid=" & BBS(lstBBS.Selected) & " and topicid=" & RstBBs.Fields("id")

RstChild.Open SQL, Conn, adOpenStatic, adLockReadOnly, adCmdText

If Not RstChild.EOF Then
For J = 1 To RstChild.RecordCount
NodChild = RstChild.Fields("matter")
If Len(NodChild) > 15 Then NodChild = Mid(NodChild, 1, 12) & "..."
Set Nod = tvwCap.Nodes.Add("n" & CStr(RstBBs.Fields("id")), tvwChild, "r" & CStr(RstBBs.Fields("id")) & "_" & RstChild.Fields("id"), "回复: " _
& NodChild & " 发表于" & RstChild.Fields("date") & " " & RstChild.Fields("time") & _
" 作者 " & CStr(RstChild.Fields("userid")), Val(RstChild.Fields("imageindex")))
RstChild.MoveNext
Next
End If
RstChild.Close
Set RstChild = Nothing
RstBBs.MoveNext
If RstBBs.EOF Then GoTo 1
Next
since1990 2003-10-21
  • 打赏
  • 举报
回复
up
zhangqs 2003-10-20
  • 打赏
  • 举报
回复
select top 1 * from 表名

这语句有时返回的并不止一条记录,我在ACCESS中有试过,当时我的做法是设一个变量,记录循环移动时,每次给变量加1,直到变量为你想要的值。
feiqinfeiwhw 2003-10-20
  • 打赏
  • 举报
回复
select top 1 * from 表名 返回第一条
select top 10 percent * from 表名 返回百分之十的。
flc 2003-10-20
  • 打赏
  • 举报
回复
学习
阿建像熊猫 2003-10-20
  • 打赏
  • 举报
回复
select top 1 * from 表名 返回第一条
select top 10 percent * from 表名 返回百分之十的。
守城小轩 2003-10-20
  • 打赏
  • 举报
回复
Select First(*) From Table
subzero 2003-10-20
  • 打赏
  • 举报
回复
select top 1 * from table
fanhailin 2003-10-19
  • 打赏
  • 举报
回复
补充一点
这个SQL语句是在ORACEL下使用的

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧