SELECT  top 5000 head.ENTRY_ID, head.OWNER_CODE, list.G_NO from 
(select TOP 5000 HEAD.ENTRY_ID,HEAD.OWNER_CODE FROM ALL_HEAD HEAD
WHERE ((SUBSTRING(HEAD.ENTRY_ID,1,4)='5201' OR SUBSTRING(HEAD.ENTRY_ID,1,4)='5202' OR 
SUBSTRING(HEAD.ENTRY_ID,1,4)='5203' OR SUBSTRING(HEAD.ENTRY_ID,1,4)='5204' OR 
SUBSTRING(HEAD.ENTRY_ID,1,4)='5205') AND ((((( SUBSTRING(HEAD.ENTRY_ID,1,2 ) = '52') 
OR ( SUBSTRING(HEAD.TRADE_CO,1,2 ) = '44')) OR ( SUBSTRING(HEAD.DISTRICT_CODE,1,2 ) = '44')) 
OR ( SUBSTRING(HEAD.MANUAL_NO,2,2 ) = '52')))) 
AND HEAD.END_DATE BETWEEN 20040701 AND 20040824) as head,ALL_LIST as list
where head.ENTRY_ID = list.ENTRY_ID
and list.END_DATE between 20040701 AND 20040824

解决方案 »

  1.   

    select TOP 5000 A.ENTRY_ID,A.OWNER_CODE,B.GNO FROM ALL_HEAD A,ALL_LIST B
    WHERE   (  
    A.ENTRY_ID like '520[1,2,3,4,5]%'  
    AND 
    (
    (
    (
    (
     A.ENTRY_ID like '52%'
    OR
       A.TRADE_CO like '44%'
    )
     OR 
     A.DISTRICT_CODE like '44%'

    OR 
     A.MANUAL_NO like '_52%'
    )
    )

    AND A.END_DATE BETWEEN 20040701 AND 20040824
    AND A.ENTRY_ID=B.ENTRY_ID
    AND B.END_DATE BETWEEN 20040701 AND 20040824go