SQL查詢某條記錄相鄰資訊,sql語句查詢,某一記錄上下相鄰的兩條記錄。怎麼寫?

2022-10-05 11:20:31 字數 3285 閱讀 4643

1樓:

樓上的寫法在查詢到首紀錄獲末紀錄時可能會出錯。

select top 3 * from [tablename]where stuseat <= (select stuseat+1 from [tablename] where stuname='李斯文' order by stuseat)

order by stuseat desc

2樓:

select * from 資料庫表 where stuseat=(select stuseat from 資料庫表 where stuname='李斯文')+1 or stuseat=(select stuseat from 資料庫表 where stuname='李斯文')-1

3樓:朩朩熋

select *

from table1 b

where b.stuseat =

(select a.stuseat from table1 a where a.stuname = '李斯文') + 1

union

select *

from table1 b

where b.stuseat =

(select a.stuseat from table1 a where a.stuname = '李斯文') - 1

sql語句查詢,某一記錄上下相鄰的兩條記錄。怎麼寫?

4樓:

select * from news a

where news_id > 12345 and not exists(select 1 from news where news_id > 12345 and

news_id < a.id )

or news_id < 12345 and not exists(select 1 from news where news_id < 12345 and

news_id > a.id )

如果不需要用一條語句寫出來,那分開寫的話,效率會好一些,這樣寫必須用一個or關鍵字

分開寫:

select max(news_id) from news where news_id < 12345

select min(news_id) from news where news_id > 12345

5樓:匿名使用者

news_id 是 int 嗎?

是的話:

select * from news where news_id =12345+1 or news_id=12345-1

12345應該是傳進來的值吧

select * from news where news_id = 變數+1 or news_id=變數-1

6樓:匿名使用者

簡單的:

select top 1 * from id where news_id>12345

select top 1 * from id where news_id<12345

7樓:

排序規則是什麼? 時間?id?

sqlserver根據id查詢某條資料以及它的上一條和下一條資料

8樓:折柳成萌

方法一:

查詢上一條記錄的sql語句(如果有其他的查詢條件記得加上other_conditions以免出現不必要的錯誤):

1select * from table_a where id = (select id from table_a where id < [and other_conditions] order by id desc limit 1) [and other_conditions];

查詢下一條記錄的sql語句(如果有其他的查詢條件記得加上other_conditions以免出現不必要的錯誤):

1select * from table_a where id = (select id from table_a where id > [and other_conditions] order by id asc limit 1) [and other_conditions];

sql語句怎樣從資料庫中查詢某一條到某一條之間的記錄

9樓:匿名使用者

不知道我有沒有理解你的意思

sqlserver資料庫

select *from(

select row_number()over(order by id) as rn,*from emp) as e

where e.rn between 15 and 20oracle資料庫

select*from (

select rownum as rn,a.*from(select *from emp order by id)as a) as b

where b .rn between 15 and 20

10樓:匿名使用者

where 某條資料的欄位名 between '值1' and '值2'

sql server 怎麼獲取相鄰的兩條資料

11樓:唐城冬

根據條件找大於它的第一條和小於它的第一條top 1,然後把這兩個資料連一下

sql查詢出距當前時間最近的一條或多條記錄。 20

12樓:匿名使用者

select a.* from

表名 as a,

(select 物料,max(生效日期) as 最新生效日期 from 表名 group by 物料) as b

where a.物料=b.物料 and a.生效日期=b.最新生效日期

表名替換一下

13樓:

select * from 你的表名 order by 你說的時間 desc limit 需要的數量;

如select * from kings order by created_at desc limit 2;

14樓:sky瘋狂的種馬

select * from table order by time desc

15樓:

你這個需求沒有說清楚,什麼叫距離當前最近,搞清楚了什麼叫距離當前最近,那就通過where條件中加入 生效時間 >= 距離最近的標誌位

SQL語句如何查詢某符串欄位長度等於某個值的所有記錄

可以使用length 函式。比如我這張表。select from test where length name 5。如圖 拓展知識len 函式 len 函式返回文字欄位中值的長度。sql len 語法 select len column name from table name mysql 中函式為...

sql怎麼查詢出欄位中等於某數字的記錄

select value from test where instr value 4,0 你這張表中bai最好不要du使用關鍵字作 為表zhi的欄位名字比如value mysql中instr函式的用法 daoinstr 欄位名,字元回串 這個函答數返回字串在某一個欄位的內容中的位置,沒有找到字串返回...

SQL語句查詢第40到80條的語句怎麼寫呢?要升序的

select top 40 from 表明 where 欄位 not null select top 40 欄位 from 表明 order by 欄位 先查出前80條 select top 80 from tablea再查出這80條中降序排列的前40條 select top 40 from sel...