sql 根据下一条的数据显示上一条数据

例如 我在一张表A59
KeyId OrderId A5903 A5904
000000001 1 2 null
000000001 2 null 失败
000000002 1 2 null
000000002 2 2 失败

我查询 A5903 =2 并用 它的下一条A5904=失败的数据,应该怎么写呀

第1个回答  2011-05-04
<%
t1=tt-1
t2=tt+1
%>
<a href="文件名.asp?id=<%=t1%>&table=<%=talbe%>">上一条数据</a><a href=="文件名.asp?id=<%=t2%>&table=<%=talbe%>">下一条数据</a>

加入到页面即可
第2个回答  2011-05-03
select a.* from a59 a
where a.keyid='0000000001' and a.a5903=2
and exists(select 1 from a59 where keyid=a.keyid and a5904='失败' and orderid=(select min(orderid) from a59 where keyid=a.keyid and orderid>a.orderid))
第3个回答  2011-05-03
select * from a59 a
where a.a5903='2' and exists (select 1 from a59 b where a.keyld=b.keyld and b.a5904='失败')

这样??
第4个回答  2011-05-03
没看懂, 应该不是直接 where A5903 =2 and A5904=失败 对吧追问

不是
比如说我要查询KeyId=0000000001 并且A5903=2 还有一个条件就是它的下一条数据,即(orderId=2)的 A5904字段等于失败

追答

--这样?

select *
from A59 a
left join A59 b on a.keyid = b.keyid and a.orderid + 1= b.orderid and b.A5904 = '失败'

本回答被提问者采纳

sql 根据下一条的数据显示上一条数据
t1=tt-1 t2=tt+1 > <a href="文件名.asp?id=<%=t1%>&table=<%=talbe%>">上一条数据<a href=="文件名.asp?id=<%=t2%>&table=<%=talbe%>">下一条数据 加入到页面即可

如何获取SQL查询当前数据上一条和下一条的记录?
方法一:\\x0d\\x0a查询上一条记录的SQL语句(如果有其他的查询条件记得加上other_conditions以免出现不必要的错误):\\x0d\\x0a1\\x0d\\x0aselect * from table_a where id = (select id from table_a where id {$id} [and other_conditions] order by id asc limit 1) [and other_...

请教一段能同时查出上一条记录及下一条记录的SQL
如果有主键自增或者按时间排序的数据库记录的话 直接根据当前的记录的主键或时间,大概可以这样写 (select * from table where id > 当前id order by id asc limit 1 ) union (select * from table where id < 当前id order by id desc limit 1)这样差不多能满足 ...

sql同一字段的数据怎么从最后往上查
select row_number() over(order by danh desc) as rn,danh,cangku from cjh where cangku='东莞')select * from temp where rn=1 你在程序中rn=1这里可以传个参数,你没执行一次就+1即可

如何在MySQL中查询当前数据上一条和下一条的记录
方法一:查询上一条记录的SQL语句(如果有其他的查询条件记得加上other_conditions以免出现不必要的错误):select * from table_a where id = (select id from table_a where id < {$id} [and other_conditions]order by id desc limit 1 )[and other_conditions];查询下一条记录的SQL语句(...

关于查询sql中数据上一条记录和下一条记录的sql语句...
如,要查找张三的create_date前和后各一条数据。with t as(select student.*,row_number() over(order by create_date) rn from student)select * from student where rn=(select t.rn+1 from t where t.name='张三')union allselect * from student where rn=(select t.rn-1 from t ...

SQL语句怎么查询一个数值上一次出现的位置?
SQL文如下:SELECT * FROM TABLE WHERE ID < 5 AND (A = 1 OR B = 1 OR C = 1 OR D = 1 OR E = 1)ORDER BY ID DESC 然后再取第一条数据就是了。取第一条的方法SQLSERVER 里面是 SELECT TOP 1 * FROM TABLE,ORACLE里面用的是ROWID,具体什么数据库用什么方法,不懂再问吧 ...

SQL如何获取上一条..下一条..首尾记录...
获得下一条的id :select min(id)as id from [表] where id>"[你的要查的id]" order by [...]很笨的办法但是很直观·不知道你是什么数据库··根据不同的数据库有很多不同的写法··比如 mysql 中的 limit 或者 mssql 中的 top 写法多了去啦··呵呵··上面举个例子罢了··希望...

使SQL查询数据下一条与上一条首尾相连
0].name;for(var i=1;i

oracle sql获取某一条数据中的前一条和后一条
先把数据集的前一条和后一条查询出来,然后再根据ID查询这个数据集,例子:SELECT * FROM (SELECT ID, NAME, LEAD(ID) OVER(ORDER BY ORDER_COL) NEXT_VALUE, LAG(ID) OVER(ORDER BY ORDER_COL) PREV_VALUE FROM TABLE_NAME) WHERE ID = ''其中LEAD和LAG函数的参数可以是其他...

相似回答
大家正在搜