数据库有四个字段,id,status(状态),status_time(改变状态的时间),qid(分组用)
查询的时候要将qid相同的status_time小于当前记录的status_time的最近的一条数据的status查询出来,怎么做啊?也就是查本条记录的状态时,把上一个状...
查询的时候要将qid相同的status_time小于当前记录的status_time的最近的一条数据的status查询出来,怎么做啊?
也就是查本条记录的状态时,把上一个状态值查出来。谢谢。 展开
也就是查本条记录的状态时,把上一个状态值查出来。谢谢。 展开
2个回答
展开全部
你准备如何查本条记录呢?
假设表名:test
假设是已知当前status_time='2010-1-1',根据你的意思是要这一条和之前一条吧。
select top 1 [qid] ,status, status_time,qid
FROM test
where status_time<'2010-1-1'
order by status_time desc
union
select [qid] ,status, status_time,qid
FROM test
where status_time='2010-1-1'
假设表名:test
假设是已知当前status_time='2010-1-1',根据你的意思是要这一条和之前一条吧。
select top 1 [qid] ,status, status_time,qid
FROM test
where status_time<'2010-1-1'
order by status_time desc
union
select [qid] ,status, status_time,qid
FROM test
where status_time='2010-1-1'
展开全部
你准备如何查本条记录呢?
假设表名:test
假设是已知当前status_time='2010-1-1',根据你的意思是要这一条和之前一条吧。
select
top
1
[qid]
,status,
status_time,qid
FROM
test
where
status_time<'2010-1-1'
order
by
status_time
desc
union
select
[qid]
,status,
status_time,qid
FROM
test
where
status_time='2010-1-1'
假设表名:test
假设是已知当前status_time='2010-1-1',根据你的意思是要这一条和之前一条吧。
select
top
1
[qid]
,status,
status_time,qid
FROM
test
where
status_time<'2010-1-1'
order
by
status_time
desc
union
select
[qid]
,status,
status_time,qid
FROM
test
where
status_time='2010-1-1'
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询