[英]how to return 2nd row record for only 1 column
我從表中選擇多列,我需要從第二行獲取記錄的列之一。 我應該如何在我的查詢中指定只有那 1 列需要從第 2 行獲取? select 語句返回 2 行,但是段 4 我只需要返回第 2 行值,其他列返回第 1 行的值。我應該怎么寫?
select substrb(segment2,1,30) invtime
, substrb(segment3,1,30) invoice
, substrb(segment4,1,10) invdate
from error_process_log;
在這種情況下,您可以使用諸如 Lead() Lag() 之類的分析函數。 希望下面的插圖有幫助。
SELECT SUBSTR(a.nm,1,10),
SUBSTR(lead(a.sn) over(order by a.sn ),1,5)
FROM
(SELECT 1 AS seq,'avrajit' nm,'Roy1' sn FROM dual
UNION ALL
SELECT 2 AS seq,'shubho' nm,'Roy2' sn FROM dual
UNION ALL
SELECT 3 AS seq,'papa' nm,'Roy3' sn FROM dual
UNION ALL
SELECT 3 AS seq,'romi' nm,'Roy4' sn FROM dual
)a;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.