sql 上一行数据

if(Prior(Event_No)==Event_No){1}else{0}用sql怎么写?主要是Prior的问题,貌似是上一行Event_No与这行Event_No的... if (Prior ( Event_No ) == Event_No ) {1 } else { 0} 用sql怎么写?
主要是Prior的问题,貌似是上一行Event_No 与这行Event_No 的值相比较,一样为1,不一样0
展开
 我来答
百度网友36cabda
2010-07-08 · TA获得超过298个赞
知道小有建树答主
回答量:493
采纳率:0%
帮助的人:320万
展开全部
(case when Event_No =Event_No then 1 else 0 end) as 列名
不知道Prior是什么意思
这个如果直接用SQL的话 就要和自身关联下,用rownum得到每行的序号,然后第一个表A是从1开始,第二个表B从0开始,关联两个表,就能得到上下的比较了

(case when A.Event_No =B.Event_No and then 1 else 0 end) as 列名
楼上的解释更明细
百度网友19c5533fd
2010-07-08 · TA获得超过2389个赞
知道小有建树答主
回答量:465
采纳率:0%
帮助的人:624万
展开全部
select case when t2.event_no = t1.event_no then 1 else 0 end if_eq
from (select a.*,rownum act_row from yourtable a ) t1
join (select a.*,rownum+1 new_row from yourtable a ) t2 on t1.act_row = t2.new_row ;

解析:
当act_row = n , new_row = n+1 都有: Event_No = nnnnn
那么 new_row - 1 = act_row ,
即: prior(new_row) = act_row
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式