select * from tt11
請問在不修改資料庫的情況下,如何改才能每五筆增加一行空白行,如下圖
你的方式滿奇特的...
我大概只能這樣查吧@@..
因為編號是排序的結果~
弄成null會跑到前面去..
declare @tab table(
item int
,num int
,sn varchar(5)
)
insert into @tab
values(1,11,'a')
,(2,11,'b')
,(3,11,'c')
,(4,11,'d')
,(5,11,'e')
,(6,11,'f')
,(7,11,'g')
,(8,11,'h')
,(9,11,'i')
,(10,11,'j')
,(11,11,'k')
,(12,11,'l')
,(13,11,'n')
,(14,11,'m')
,(15,11,'o')
select *
from ((
select item
,num
,sn
from @tab
)union all(
select item
,null
,null
from @tab
where item % 5 = 0
)) as k
order by item
抱歉請教一下,oracle 好像對下面空值方式是無效的
select '','','',' '
select null,null,null,null
oracle是用什麼方法取空值?
直接把欄位命名上去就OK了,就是把null塞給num和sn這兩個欄位的概念,會跑不出來可能是某些語法限制你union時欄位要相同(沒命名會以為你是不同欄位)。
補充如下
select item
,null num
,null sn
感謝。
可否再請教一個問題
where item % 5 = 0
oracle不允許
要這樣吧..
create table table1(
item number(19,0)
,num number(19,0)
,sn varchar2(30)
);
insert into table1(item,num,sn) values(1,11,'a');
insert into table1(item,num,sn) values(2,11,'b');
insert into table1(item,num,sn) values(3,11,'c');
insert into table1(item,num,sn) values(4,11,'d');
insert into table1(item,num,sn) values(5,11,'e');
insert into table1(item,num,sn) values(6,11,'f');
insert into table1(item,num,sn) values(7,11,'g');
insert into table1(item,num,sn) values(8,11,'h');
insert into table1(item,num,sn) values(9,11,'i');
insert into table1(item,num,sn) values(10,11,'j');
insert into table1(item,num,sn) values(11,11,'k');
insert into table1(item,num,sn) values(12,11,'l');
insert into table1(item,num,sn) values(13,11,'n');
insert into table1(item,num,sn) values(14,11,'m');
insert into table1(item,num,sn) values(15,11,'o');
select item
,num
,sn
from table1
union all
select item
,null
,null
from table1
where MOD(item,5) = 0
order by item,num ;
謝謝你!!