select  PRDT_CUS.CUS_NO,TF_MO.QTY_RSV,MF_MO.STA_DD  from PRDT_CUS left outer join TF_MO on TF_MO.PRD_NO=PRDT_CUS.PRD_NO left outer join MF_MO on TF_MO.MO_NO=MF_MO.MO_NO where PRDT_CUS.CUS_NO='C-CH0001'

解决方案 »

  1.   

    select  PRDT_CUS.CUS_NO,TF_MO.QTY_RSV,MF_MO.STA_DD  from  MF_MO right join TF_MO on  MF_MO.MO_NO=TF_MO.MO_NO  right join PRDT_CUS  on TF_MO.PRD_NO=PRDT_CUS.PRD_NO  where   PRDT_CUS.CUS_NO='C-CH0001'
      

  2.   

    select  PRDT_CUS.CUS_NO,TF_MO.QTY_RSV,MF_MO.STA_DD  from  MF_MO,TF_MO,PRDT_CUS  where  PRDT_CUS.PRD_NO *= TF_MO.PRD_NO  and TF_MO.MO_NO *=MF_MO.MO_NO  and    PRDT_CUS.CUS_NO='C-CH0001'
      

  3.   

    --试试:
    select c.CUS_NO,a.QTY_RSV,b.STA_DD
    from  TF_MO a
    join MF_MO b on a.MO_NO=a.MO_NO
    right join PRDT_CUS c on a.PRD_NO=c.PRD_NO
    where c.CUS_NO='C-CH0001'
      

  4.   

    --如果不行,再用这句:
    select b.CUS_NO,a.QTY_RSV,a.STA_DD
    from(
    select a.PRD_NO,a.QTY_RSV,b.STA_DD
    from  TF_MO a join MF_MO b on a.MO_NO=a.MO_NO
    ) a right join PRDT_CUS b on a.PRD_NO=b.PRD_NO
    where b.CUS_NO='C-CH0001'
      

  5.   

    select c.CUS_NO,a.QTY_RSV,b.STA_DD
             from  TF_MO a
             inner join MF_MO b on a.MO_NO=a.MO_NO
             right join PRDT_CUS c on a.PRD_NO=c.PRD_NO
                   where c.CUS_NO='C-CH0001'
      

  6.   

    是不是.cus_no里面有多余的空格?你先试试这个再查询看看:update PRDT_CUS 
    set CUS_NO=ltrim(cus_no)
      

  7.   

    没有多余的空格,因为我用select * from PRDT_CUS where CUS_NO='C-CH0001'可以查出全部记录。
    我现在把三个表的结构贴出来,请大家分析分析我先把情况说明一下
    MF_MO的MO_NO主键(不能重复)一条记录等于“001”,可能在TF_MO里有多条MO_NO等于“001”的记录,而目前所需要的记录是TF_MO的全部记录,TF_MO里的PRD_NO与PRDT_CUS里PRDT_CUS里的PRD_NO相符关连,而要符全PRDT_CUS的CUS_NOS要等于字符串“C-CH0001”的条件。
    MF_MO(表一)
    MO_NO varchar 10
    MO_DD datetime 8
    STA_DD datetime 8
    END_DD datetime 8
    BIL_ID varchar 2
    BIL_NO varchar 10
    MRP_NO varchar 30
    WH varchar 4
    SO_NO varchar 12
    UNIT varchar 1
    QTY numeric 13
    QTY1 numeric 13
    NEED_DD datetime 8
    DEP varchar 4
    CUS_NO varchar 12
    CLOSE_ID varchar 1
    USR varchar 8
    CHK_MAN varchar 8
    BAT_NO varchar 20
    REM text 16
    PO_OK varchar 1
    MO_NO_ADD varchar 25
    QTY_FIN numeric 13
    TIME_AJ numeric 13
    QTY_ML numeric 13
    BUILD_BIL text 16
    CST_MAKE numeric 13
    CST_PRD numeric 13
    CST_OUT numeric 13
    CST_MAN numeric 13
    USED_TIME numeric 13
    CST numeric 13
    PRT_SW varchar 1
    OPN_DD datetime 8
    FIN_DD datetime 8
    BIL_MAK varchar 1
    CPY_SW varchar 1
    CONTRACT varchar 80
    EST_ITM smallint 2
    ML_OK varchar 1
    MD_NO varchar 200
    QTY_RK numeric 13
    CLS_DATE datetime 8
    ID_NO varchar 28
    QTY_CHK numeric 13
    PRD_MARK varchar 16
    CONTROL varchar 1
    ISNORMAL varchar 1
    QC_YN varchar 1
    MM_CURML varchar 1
    TS_ID varchar 1
    PRDT_CUS(表二)


    PRD_NO varchar 20
    CUS_NO varchar 12
    PRD_NO_SUP varchar 40
    UP_SPC numeric 13
    DIS_RTO numeric 13
    REM varchar 100
    PO_DAYS smallint 2
    QTY_LOW numeric 13
    UNIT varchar 1
    UP_TW numeric 13
    PRD_NAME_SUP varchar 40
    LOSS numeric 13
    PO_RTO numeric 13
    RTO_TAX numeric 13
    TF_MO(表三)
    MO_NO varchar 10
    ITM smallint 2
    PRD_NO varchar 20
    PRD_NAME varchar 40
    WH varchar 4
    UNIT varchar 1
    QTY_RSV numeric 13
    QTY_LOST numeric 13
    QTY numeric 13
    BAT_NO varchar 20
    REM varchar 200
    CST numeric 13
    ZC_NO varchar 10
    TW_ID varchar 1
    ZC_REM text 16
    USEIN varchar 100
    CPY_SW varchar 1
    USEIN_NO varchar 40
    PRD_NO_CHG varchar 200
    QTY1_RSV numeric 13
    QTY1_LOST numeric 13
    ID_NO varchar 28
    MD_NO varchar 200
    PRD_MARK varchar 16
    QTY_TS numeric 13
    TS_ITM smallint 2
      

  8.   

    select  PRDT_CUS.CUS_NO,TF_MO.QTY_RSV,MF_MO.STA_DD  from  MF_MO,TF_MO,PRDT_CUS  where  MF_MO.MO_NO=TF_MO.MO_NO  and  TF_MO.PRD_NO=*PRDT_CUS.PRD_NO  and  PRDT_CUS.CUS_NO='C-CH0001'  
    先加一个星号试试看
      

  9.   

    select  
    PRDT_CUS.CUS_NO,
    TF_MO.QTY_RSV,
    MF_MO.STA_DD  
    from  MF_MO,
    TF_MO,
    PRDT_CUS  
    where  MF_MO.MO_NO=TF_MO.MO_NO  
    and  TF_MO.PRD_NO=*PRDT_CUS.PRD_NO  
    and  PRDT_CUS.CUS_NO='C-CH0001' 
    这样不行的话,先封住MF_MO.MO_NO=TF_MO.MO_NO条件看看行不行
    如果有数据,这样调试一下