平常我們在查詢的時候往往會通過表之間的關聯得到想要的資訊,而在實際情況中出現最多的莫過於主表跟子表進行關聯查詢。在這種一對多的關聯查詢中難免會出現主表中的某些字段資料重複出現,就像下面這種情況
這是乙個普通的關聯查詢,是用來給倉管員核對7月到9月的領用物資用的,所以這裡需要關聯盡量多可讀的資訊出來。在關聯的過程中像sheetname、sheetno這兩個欄位都出現大量重複。在資料量大的情況下很容易造成讀者混亂,所以要將這兩個字段重複的資料合併。因此提供了下面的sql:
with xx as
(-- 正常的查詢語句
)select
decode(rn,
1, 欄位1
)as 欄位1
,欄位2
from
(select xx.
*,row_number(
)over
(partition
by 字段 1
order
by 欄位2
) rn from xx)
;
具體例子如下:
得出的效果圖為:
這樣就清晰很多了,在plsql中匯出到excel就可以交給領導,不用再到excel中弄。
學習筆記 Java報表合併行
for int i 0 i energydatarecorddetail detail energydatarecorddetail list.get i hssfrow row6 sheet2.createrow short 5 i 建立第三行 row6.setheight short 800 c...
Oracle合併行的使用介紹
當我們需要處理訂單的時候可能會有這樣的奇怪的需求 把訂單明細裡的商品種類顯示出來,例如乙個訂單包括圖書,花生油,自行車,當我們存放的時候是分別存放到訂單明細中的,當我們取得時候需要一起提取。這就涉及到乙個合併列的概念。一 訂單表和訂單詳情表分開 總分結構 oracle 10g提供的方法是 selec...
oracle生成報表語句
e.g 1 set linesize 200 set pagesize 200 set term off feedback off set markup html on entmap on preformat off spool f people report.xls select from peo...