我有这样一个SQL:
select count(ORG) num0
from (select distinct T001.ORG, T001.ID, T001.SEQ_ID
from VS_NYC_BASIC T001, V_CORP_NEWEST_WZ_NYC T008
WHERE T001.CORP_ORG = T008.ORG(+)
AND T001.CORP_ID = T008.ID(+)
AND T008.ADMIT_MAIN IN ('10', '11', '12', '13', '18', '19')
and ((T001.YHK_YEAR = '2008' and
((NOT EXISTS
(SELECT NULL
FROM VS_NYC_BASIC T_YHK
WHERE T008.ORG = T_YHK.CORP_ORG
AND T008.ID = T_YHK.CORP_ID
AND T_YHK.YHK_YEAR = TO_CHAR(SYSDATE, 'YYYY') - 1)))) and
(T001.CREATE_ORG in (876) and T008.CORP_STATUS in ('01'))))当查询条件为红色部分时,其他年度都是正常的,可到了(本年-1----目前指的就是2008年)的时候就查不到数据了,请问各位大虾我该怎么做才能解决这个问题,而又不影响其他年度呢(能贴出SQL的最好,非常感谢)??
select count(ORG) num0
from (select distinct T001.ORG, T001.ID, T001.SEQ_ID
from VS_NYC_BASIC T001, V_CORP_NEWEST_WZ_NYC T008
WHERE T001.CORP_ORG = T008.ORG(+)
AND T001.CORP_ID = T008.ID(+)
AND T008.ADMIT_MAIN IN ('10', '11', '12', '13', '18', '19')
and ((T001.YHK_YEAR = '2008' and
((NOT EXISTS
(SELECT NULL
FROM VS_NYC_BASIC T_YHK
WHERE T008.ORG = T_YHK.CORP_ORG
AND T008.ID = T_YHK.CORP_ID
AND T_YHK.YHK_YEAR = TO_CHAR(SYSDATE, 'YYYY') - 1)))) and
(T001.CREATE_ORG in (876) and T008.CORP_STATUS in ('01'))))当查询条件为红色部分时,其他年度都是正常的,可到了(本年-1----目前指的就是2008年)的时候就查不到数据了,请问各位大虾我该怎么做才能解决这个问题,而又不影响其他年度呢(能贴出SQL的最好,非常感谢)??
VS_NYC_BASIC:
CREATE OR REPLACE VIEW VS_NYC_BASIC AS
SELECT "ORG",
"ID",
"SEQ_ID",
"CORP_ORG",
"CORP_ID",
"CORP_SEQ_ID",
"REG_NO",
"CORP_CHINA_NAME",
"CORP_ENG_NAME",
"ADDR",
"FARE_PLACE",
"ECON_KIND",
"BELONG_TRADE",
"FARE_SCOPE",
"INDIV_FORM_MODE",
"REG_CAPI_TYPE",
"INVEST_CURR_TYPE",
"REG_CAPI",
"FOR_COUNT_CAPI",
"PERSON_ORG",
"PERSON_ID",
"PERSON_SEQ_ID",
"CERTIFICATE_NO",
"OPER_MAN_NAME",
"TEL",
"MOBILE",
"ZIP",
"FAX",
"E_MAIL",
"WEB_URL",
"DIRECTOR_DEPT",
"FARE_TERM_START",
"FARE_TERM_END",
"START_DATE",
"LICENCE_TYPE",
"CITY_VILL_SIGN",
"PRAC_PERSON_NUM",
"FOR_PERSON_NUM",
"PART_PERSON_NUM",
"EMP_NUM",
"XG_NUM",
"ASSETS_AMOUNT",
"DEBT_AMOUNT",
"NET_AMOUNT",
"REAL_CAPITAL",
"PRODUCTION_VALUE",
"TURNOVER",
"THROWTAX_PROFIT",
"LOSE_MONEY_AMOUNT",
"BAD_REASON",
"LONG_INVEST",
"PROFIT_TOTAL",
"CLEAN_PROFIT",
"LONG_OWES",
"SALE_INCOME",
"SERV_FARE_INCOME",
"RATEPAYING_TOTAL",
"CUSTOM",
"IS_REPORT",
"FINANCE_DEAL",
"CONTACT_CORP",
"CONTACT_FARE_DATE",
"CONTACT_TERM",
"PUT_PROD_DATE",
"ZCXG_CIRCS",
"ZCXGBA_CIRCS",
"FOR_EXCHANGE_INCOME",
"FOR_EXCHANGE_CANCEL",
"UNIFY_CODE",
"CORP_PRODUCE_STATUS",
"CHANGE_ITEM",
"YHK_YEAR",
"DOC_NO",
"YEARCHECK_STATUS",
"MAIN_PRODUCTION",
"INDIV_INVEST_KIND",
"PARENT_CORP_NAME",
"WEB_WRITE_MAN",
"WRITE_MAN_IDCARD",
"MANAGER",
"CONTACT_MAN",
"CREATE_ORG",
"CREATE_DATE",
"STATE",
"STATE_DATE",
"PRINT_FLAG",
"REG_COUNTRY",
"NYC_OPERATE",
"BELONG_ORG",
"PRIVATE_SIGN",
"BELONG_DIST_ORG",
"GAOXIAO_NUM",
"LINGSHOU",
sale_income yy_income,
case when
(select count(*) from g$job_log where main_id=t_nyc_basic.id and flow_Id in (3031,3032,3034,3033))>0 then 1 else 0 end shushi_num,
case when
(select count(*) from g$job_log where main_id=t_nyc_basic.id and flow_Id in (3031,3032,3034,3033))=0 then 1 else 0 end wang_num
FROM T_NYC_BASIC
WHERE YEARCHECK_STATUS IS NOT NULL
AND YEARCHECK_STATUS <> 'H'
AND NYC_OPERATE IN ('01', '02')
V_CORP_NEWEST_WZ_NYC:
CREATE OR REPLACE VIEW V_CORP_NEWEST_WZ_NYC AS
SELECT "ORG","ID","SEQ_ID","CREATE_ORG","NAME_REG_NO","REG_NO",
"CORP_NAME","ADDR","FARE_PLACE","BELONG_ORG","CONSIGN_ORG",
"BELONG_DIST_ORG","BELONG_TRADE","ECON_KIND","ADMIT_MAIN","START_DATE",
"CHECK_DATE","OPER_MAN_IDENT_NO","OPER_MAN_NAME","CORP_STATUS",
"CORP_OPERATE","REG_CAPI","FARE_TERM_START","FARE_TERM_END",
"CREDIT","FARE_SCOPE","UNIFY_CODE","OLD_ORG_CANCEL_SIGN",
"MOVE_TO_ORG","CREATE_DATE","STATE","STATE_DATE","COME_OUT",
"SURROGATE_SIGN","WRITEOFF_DATE","REVOKE_DATE","YEARCHK_DATE",
"LAST_SEQ_ID","ORD","CANCEL_FLAG","OVER_DAYS","OLD_REG_NO","ABUITEM","CBUITEM",
FUN_wznyc_realcapi(org,id,seq_id,1) "WS_REAL_CAPI", --外方实缴额万美元
FUN_wznyc_realcapi(org,id,seq_id,2) "WS_REAL_CAPI_RMB",--外方实缴额万元
FUN_wznyc_realcapi(org,id,seq_id,3) "REAL_CAPI_RMB",--实收资本万元
(select b.name from t_dict_corp_type b where econ_kind=b.id) qylx
FROM V_CORPV_CORP:
CREATE OR REPLACE VIEW V_CORP AS
SELECT "ORG",
"ID",
"SEQ_ID",
"CREATE_ORG",
"NAME_REG_NO",
"REG_NO",
"CORP_NAME",
"ADDR",
"FARE_PLACE",
"BELONG_ORG",
"CONSIGN_ORG",
"BELONG_DIST_ORG",
"BELONG_TRADE",
"ECON_KIND",
"ADMIT_MAIN",
"START_DATE",
decode (corp_status,'03',revoke_date,'02',writeoff_date,'01',check_date,'04',check_date,'12',check_date,'13',check_date,check_date) "CHECK_DATE",
"OPER_MAN_IDENT_NO",
"OPER_MAN_NAME",
"CORP_STATUS",
"CORP_OPERATE",
"REG_CAPI",
"FARE_TERM_START",
"FARE_TERM_END",
"CREDIT",
"FARE_SCOPE",
"UNIFY_CODE",
"OLD_ORG_CANCEL_SIGN",
"MOVE_TO_ORG",
"CREATE_DATE",
"STATE",
"STATE_DATE",
"COME_OUT",
"SURROGATE_SIGN",
"WRITEOFF_DATE",
"REVOKE_DATE",
"YEARCHK_DATE",
"LAST_SEQ_ID",
"ORD",
"CANCEL_FLAG",
"OLD_REG_NO",
(SELECT (SELECT GROUP_NAME
FROM T_JJHK_GROUP T1
WHERE T1.ORG = T2.GROUP_ORG
AND T1.ID = T2.GROUP_ID
AND ROWNUM < 2)
FROM T_JJHK_GROUP_OBJECT T2
WHERE T2.STATE = 'M'
AND T2.CORP_ORG = T3.ORG
AND T2.CORP_ID = T3.ID
AND ROWNUM < 2) GROUP_NAME, --2008-09-08 zhouhl加入巡查组的字段
TRUNC(SYSDATE)-FARE_TERM_END OVER_DAYS,"ABUITEM","CBUITEM"
FROM T_CORP T3
WHERE (CORP_OPERATE >= '21' AND CORP_OPERATE <= '40') --2008-08-04 zhouhl再次修改,增加38,40
AND (COME_OUT = '0' OR COME_OUT IS NULL)
AND cancel_flag is null --2008-06-05 zhouhl添加里面的那些数字就别管了,只是一些标示。