真的很急 急求~~~高分求高手 求一SQL算法 有思路 但写不出T-SQL 帮忙~

p54288 2006-08-08 11:39:48
SELECT distinct Flowfile.FileID
FROM FlowFile, WorkFlow
WHERE 0=0
and FlowFile.FlowTypeID in (<%=Cast._String(getVariable(pageContext,"Client.FlowTypes"))%>

就是最后一个AND条件 FlowFile.FlowTypeID 后面IN的那个条件是网页上得过来的 但是他的数据量可能很但 现在想做的就是 不能大于1000条数据就 如果IN后面的数据有3600条 就要是 1000条 1000条 1000条 600条 这样 我的想法是这样的

就是把记录取出来
然后有个@@count属性
去判断记录是多少条
然后 / 1000
分几次
然后到了1000
打回车
但是我不知道 怎么写成SQL语句 请大家帮帮忙把 下午就要了~
...全文
375 22 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
22 条回复
切换为时间正序
请发表友善的回复…
发表回复
p54288 2006-08-08
  • 打赏
  • 举报
回复
THANKS 不晓得 会不会来 有问题在来请教 问题解决 马上结贴 大家都有分
xyxfly 2006-08-08
  • 打赏
  • 举报
回复
http://community.csdn.net/Expert/topic/4917/4917705.xml?temp=.6137964
分页存储过程,你参考一下
p54288 2006-08-08
  • 打赏
  • 举报
回复
问题还没解决怎么帖子沉了啊~~
p54288 2006-08-08
  • 打赏
  • 举报
回复
shawnwan()
说的对的 我也是这样想的 但是怎样才能写出SQL语句呢 SQL我一点都不好 只会基本的
p54288 2006-08-08
  • 打赏
  • 举报
回复
在这里先谢谢大家踊跃回复 我不会浪费大家的心意的

现在公司就让我直接在IN后面加判断 如果用程序做分页控制我会
但在SQL里 不大会 如果能在 SQL中做分页 会不会很麻烦 怎么弄 请大家指教
shawnwan 2006-08-08
  • 打赏
  • 举报
回复
1. 获取总条数 3600
2. 3600/1000 得出 4
3. page 属性制定要那页 2 ,pagesize = 1000;
4. 然后 将 数据集后移 2* pagesize ,再获取 pagesize条数据即可
p54288 2006-08-08
  • 打赏
  • 举报
回复
“没有看懂”

受打击了
就是他IN后面的那个条件 可能是个很大的数据 超过1000条
现在就是感觉象HIBERNATE里的分页 把他分成1000条一页的情况
我这用的是JDBC连的
lalakid 2006-08-08
  • 打赏
  • 举报
回复
分页吧
---
你在论坛里搜索一下分页存储过程
Yang_ 2006-08-08
  • 打赏
  • 举报
回复
只能前端处理
返回所有记录,再分页显示
playwarcraft 2006-08-08
  • 打赏
  • 举报
回复
in後面3600個數據,這個SQL語句好像也太那個了吧,為什麼要分1000,1000的呢?
Yang_ 2006-08-08
  • 打赏
  • 举报
回复
SQL做不了和用户的交互
playwarcraft 2006-08-08
  • 打赏
  • 举报
回复
沒有看懂:(
p54288 2006-08-08
  • 打赏
  • 举报
回复
问题就是不能前端解决 只能在后面加IF判断 而且这个SQL查询会影响到很多地方 急死人啊
Yang_ 2006-08-08
  • 打赏
  • 举报
回复
前端解决
fire_qu 2006-08-08
  • 打赏
  • 举报
回复
UP一下,和楼主共同进步
十一月猪 2006-08-08
  • 打赏
  • 举报
回复
分页显示
Carol_zyr 2006-08-08
  • 打赏
  • 举报
回复
真是个很有用东西,学习学习
p54288 2006-08-08
  • 打赏
  • 举报
回复
谢谢大家哦 我在想想 刚刚又告诉我 他们上面做过分页了 我这个就不能用分页 会混起来 我日哦
hellowork 2006-08-08
  • 打赏
  • 举报
回复
对啊,可能楼主的表里没有id,那么就要使用你上面写的方法生成id,这样才能应用我上面那个方法.
p54288 2006-08-08
  • 打赏
  • 举报
回复
不知道hellowork(一两清风) 是不是这个意思

select IDD=identity(int,1,1),* into #t from table
select * from #T Where IDD Between 2000 And 3000
Drop table #T
加载更多回复(2)

34,838

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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