some complex sql to review

select count(*) from (select b.id id, b.OBJECT_ID, b.POSTING_DATE, b.OPEN_TIME, b.QUOT_DEAD, b.PROCESS_TYPE, b.DESCRIPTION, b.ZORGNAME, b.PSPID, b.POST1, b.ZDJZT, b.NAME_LAST, m.MATNR_ID MATNR, m.CLASS1T, m.MAKTX, m.TEXT,  m.QUANTITY  from bid b left join material m on b.id = m.b_id) c

select * from (select A.*, rownum num1 from (select b.id id, b.OBJECT_ID, b.POSTING_DATE, b.OPEN_TIME, b.QUOT_DEAD, b.PROCESS_TYPE, b.DESCRIPTION, b.ZORGNAME, b.PSPID, b.POST1, b.ZDJZT, b.NAME_LAST, m.MATNR_ID MATNR, m.CLASS1T, m.MAKTX, m.TEXT,  m.QUANTITY  from bid b left join material m on b.id = m.b_id) A where ROWNUM <= 100) where num1 > 0 

select count(*), zorgname from Bid b group by zorgname

select m.matnr_id, m.object_id, t.zorgname from material m inner join (select distinct (object_id), zorgname  from BID order by zorgname) t on m.object_id = t.object_id order by t.zorgname
select count(*) from (select m.id id, b.OBJECT_ID, b.POSTING_DATE, b.OPEN_TIME, b.QUOT_DEAD, b.PROCESS_TYPE, b.DESCRIPTION, b.ZORGNAME, b.PSPID, b.POST1, b.ZDJZT, b.NAME_LAST, m.MATNR_ID MATNR, m.CLASS1T, m.MAKTX, m.TEXT,  m.QUANTITY  from bid b left join material m on b.id = m.b_id where 1=1  and (to_char( b.POSTING_DATE,'yyyy-mm-dd') >= '2013-01-01' and  to_char( b.POSTING_DATE,'yyyy-mm-dd') <=  '2013-04-20') order by nlssort(OBJECT_ID,'NLS_SORT=SCHINESE_PINYIN_M') asc) A


select m.matnr_id, m.object_id, t.zorgname from material m inner join (select distinct (object_id), zorgname  from BID order by zorgname) t on m.object_id = t.object_id order by t.zorgname

select C.reply_id, C.matnr_id, C.name_org1, C.material_id, C.isaccept, A.object_id, A.zorgname from (select r.reply_id, r.matnr_id, r.name_org1, r.material_id, r.isaccept from bidreply2 r where r.isaccept = '') C left join (select m.matnr_id, m.object_id, m.id material_id, t.zorgname from material m inner join (select distinct (object_id), zorgname  from BID order by zorgname) t on m.object_id = t.object_id order by t.zorgname) A on C.material_id = A.material_id 

SELECT COUNT(*) gainnum, zorgname from (
select C.reply_id, C.matnr_id, C.name_org1, C.material_id, C.isaccept, A.object_id, A.zorgname from (select r.reply_id, r.matnr_id, r.name_org1, r.material_id, r.isaccept from bidreply2 r where r.isaccept = '') C left join (select m.matnr_id, m.object_id, m.id material_id, t.zorgname from material m inner join (select distinct (object_id), zorgname  from BID order by zorgname) t on m.object_id = t.object_id order by t.zorgname) A on C.material_id = A.material_id 
) D group by D.zorgname


select r.name_org1, r.material_id, r.isaccept, m.b_id from bidreply2 r inner join material m  on r.material_id = m.id inner join bid b  on b.id= m.b_id  where r.name_org1 = '天津市' and (to_char( b.POSTING_DATE,'yyyy-mm-dd')  between '2013-01-01' and '2013-08-09')


SELECT COUNT(*) FROM (
 select r.name_org1, r.material_id, r.isaccept, m.b_id from bidreply2 r inner join material m  on r.material_id = m.id inner join bid b  on b.id= m.b_id  where r.name_org1 = '天津市' and (to_char( b.POSTING_DATE,'yyyy-mm-dd')  between '2013-01-01' and '2013-08-09') and r.isaccept = ''
 ) W

String insert_sql = "insert into SAPSR3.ZLIFNRRGT("+ colname +") select "+ colname +" from SAPSR3.ZLIFNRRGT_CHECK where LIFNRRGTID = '"+guid+"' and CHECK_YEAR = (SELECT MAX(CHECK_YEAR) FROM SAPSR3.ZLIFNRRGT_CHECK where LIFNRRGTID = '"+guid+"' )";

 

 

 

 


 

posted on 2013-11-29 16:47  TreasureNow  阅读(194)  评论(0编辑  收藏  举报

导航