gpt4 book ai didi

sql - 选择记录任一侧的行

转载 作者:行者123 更新时间:2023-12-04 00:04:14 25 4
gpt4 key购买 nike

我想从我拥有的图像表中选择记录两边的 4 行。

到目前为止,我有以下内容:-

with myresults as(
select mykey, imageThumb,ROW_NUMBER() OVER (ORDER BY mykey)AS Row from images where userid = @userID
)

select * from myresults where

row < ((select row from myresults where mykey=@imageID)+5)
and
row > ((select row from myresults where mykey=@imageID)-5)

这确实可以,但我想知道是否有更好/更简单的方法来做这件事

谢谢

最佳答案

您走在正确的轨道上,但您需要先执行 row_number(),然后再执行 where。下面是使用 cross join 的一种方法:

with myresults as(
select mykey, imageThumb, ROW_NUMBER() OVER (ORDER BY mykey) as Row
from images
)
select m.*
from myresults m cross join
(select * from myresults where userid = @userID) u
where m.row < u.row + 5 and m.row > u.r - 5;

关于sql - 选择记录任一侧的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26562168/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com