Office中国论坛/Access中国论坛

标题: [已解决]在没有sn的情况下, 怎样用sql得出某记录是第几条记录? [打印本页]

作者: yexiangzi    时间: 2009-3-24 02:39
标题: [已解决]在没有sn的情况下, 怎样用sql得出某记录是第几条记录?
本帖最后由 yexiangzi 于 2009-3-25 18:31 编辑

在没有sn的情况下, 怎样用sql得出某记录是第几条记录?

小弟的情况是这样的, 如下表
sn
name
quantityA
quantityB
1
aaaa
10000
5000
2
eeeee
9000
4000
3
ccccc
8000
3000
4
qqqqq
7000
2000
5
rrrrr
6000
1000

这个表是让各位好一理解的, 实际上并没有sn这一列, 定义第一行quantityAquantityB的结果为result1, 第二行quantityAquantityB的结果为result2, 如此类推, 那么怎样才能够得出前三行quantityAquantityB的结果?
作者: Henry D. Sy    时间: 2009-3-24 06:24
你是想得到序号或者得到quantityA-quantityB
作者: ACMAIN_CHM    时间: 2009-3-24 08:02

在ACCESS自带帮助文档中搜索 select top


******************
*  一切皆有可能  *
******************

.
ACMAIN - Access论坛回贴准则(个人).
.

.
QQ群 48866293 / 12035577 / 7440532 / 13666209
http://www.office-cn.net/vvb/ .
http://www.accessbbs.cn/bbs/index.php .
http://www.accessoft.com/bbs/index.asp .
http://www.access-programmers.co.uk/forums .
.
http://www.office-cn.net/home/space.php?uid=141646 .

作者: yexiangzi    时间: 2009-3-24 14:03
你是想得到序号或者得到quantityA-quantityB
Henry D. Sy 发表于 2009-3-24 06:24


应该是后者, 想得到顺序的quantityA-quantityB
作者: yexiangzi    时间: 2009-3-24 14:04
在ACCESS自带帮助文档中搜索 select top
ACMAIN_CHM 发表于 2009-3-24 08:02


小弟试试
作者: todaynew    时间: 2009-3-24 14:24
是不是这样:
select quantityA -  quantityB as result from tb
作者: Henry D. Sy    时间: 2009-3-24 22:16
应该是后者, 想得到顺序的quantityA-quantityB
yexiangzi 发表于 2009-3-24 14:03
你自己都没有确定?
作者: wwwwa    时间: 2009-3-25 14:33
除非表中有唯一标识的字段,如quantityA OR quantityB唯一,不重复
作者: yexiangzi    时间: 2009-3-25 15:20
小弟可能表达不清楚, 令大家都难以理解了, 这个问题其实可以简单地理解为一个分页问题, 就是假设有一个表, 里面有10笔记录, 分10页, 第一页就是第一笔记录, 如此类推. 只不过现在不是真的在做分页, 只是效果上跟分页有点相似, 就是要找出数据表中的第n笔记录, 而且不是单纯的查询1笔记录, 而是将quantityA减quantityB制成一个新的字段
作者: yexiangzi    时间: 2009-3-25 18:33
转自一位大大的解答

SELECT count(y.sn) as row_num, (x.quantityA-x.quantityB) as VAR, x.sn, x.name, x.quantityA, x.quantityB
FROM TestData as X, TestData as Y
WHERE x.sn >= y.sn
       and x.sn >= 2
       and y.sn >= 2     
GROUP BY  x.sn, x.name, x.quantityA, x.quantityB
HAVING count(y.sn) <=3

Note:WHERE条件式 x 与 y 需一致(例:x.sn >= 2 and y.sn >= 2)




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3