1假如order_id是主键的话,select top(200) goos_name,order_sn from goods,order where goodsorder_id=orderorder_id
1假如两表中都没有主键的话,那么你可以使用游标
declare mycursor scroll cursor --定义一个滚动游标,mycursor是游标名字
for select top(200) goods_name,order_sn from goods,order where goodsorder_id=orderorder_id --表示游标的范围在这个select语句之间
open mycursor--打开游标
fetch absolute 100 from mycursor--游标移动到第100行
while @@fetch_status=0--值为0表示执行成功,为-1表示执行失败,为-2表示提取的行不存在
fetch next from mycursor--移动到下一行
close mycursor--关闭游标
deallocate mycursor--释放游标
其实很简单,只是取第三列的数据时候你需要知道第三列的字段名。
我做了以下方法:
select t列的字段名 from (select ROWNUM As No , M from 表名 M) t
where tNo = '3'
就可以了。
这里的M表和T表是一个表,也即是说如果你的表明为A的话,
select t列的字段名 from (select ROWNUM As No , M from A M) t
where tNo = '3'
就可以了。
1、需要用到row_number()
2,select
id,row_no
from
(select
id,
row_number()
over(
partition
by
如果有需要分组的请加上,order
by
id
)
as
row_no
from
table
)
xx
where
xxrow_no
=
5
需要什么填写什么数字就好了。
可以做到。
您增加一个序号字段,自己维护,保证其是递增的。
select
from table
where serialid = 6
就是第6行的记录。
行号,是指在一定顺序的记录中排列的名次数。
在sql中,如果没有排序,记录顺序是不一定的,
所以,也就不能确定行号(这叫已知条件不足吧)。
但是您如果告诉了要按什么顺序排列,就可以很简单地求出行号。
比如按您给出的两列col1,col2排序,就可以这样求行号:
select
行号=(select
count(1)
from
tablename
a
where
acol110000+acol2<=tablenamecol110000+tablenamecol2),
from
tablename
order
by
col1,col2
可以用row_number函数,如以下数据:
ID NAME
1 张三
3 李四
5 王五
7 赵六
如查询王五这条数据在数据库里是第几条,可以这样。
select trn from(select ,row_number() over(order by id) rn from 表名) t
where tname='王五'
结果会显示为3,也就是第三条数据
以上就是关于mssql 多表 第几行到第几行 查询全部的内容,包括:mssql 多表 第几行到第几行 查询、SQL查询,如何查询一个表中第三行,第三列的数据、SQL语句怎么查询表中的第几行的数据,比如第5行,按主键id排序。等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)