是不是这个意思?
外连接select * from a,b
where a.a=b.b(+)  右
select * from a,b
where a.a(+)=b.b  左

解决方案 »

  1.   

    select a.id,b.id
    from a,b
    where
    a.id=b.id(+)
    以上是左联,反之右联
    左联表示选中左边表全部记录,匹配右边表的记录。反之亦然
      

  2.   

    create  or replace view trm_temp_task_v as
    select
       T_Mess.Title task_subject
      ,T_Mess.Content task_description
      
      ,Category.category_id task_category_id
      ,Severity.severity_id task_severity_id
      
      ,T_Mess.SendTime task_create_date
      ,T_Tmp_Mess.HasPass task_is_accepted 
      ,T_DiaoDu.DiaoDuExp task_assignDesc
      ,T_DiaoDu.NeedFiniTime task_due_date
      ,T_DiaoDu.FiniPerc task_finishPercent 
      ,T_DiaoDu.DealTime task_answer_date
      ,T_DiaoDu.DealExp task_answerDesc
      ,T_Mess.FiniTime task_finish_date
      ,T_Mess.FiniExp task_confirmDesc  ,creatorUserGroup.user_Group_id task_creator_id
      ,assignerUserGroup.user_Group_id task_assigner_id
      ,recieverUserGroup.user_group_id task_reciever_idFrom
     trm_categories category,trm_severities severity
    ,trm_user_group creatorUserGroup,trm_user_group assignerUsergroup,trm_user_group recieverUsergroup
    ,trm_groups OwnerGroup,trm_groups creatorgroup,trm_groups assignerGroup,trm_groups recieverGroup
    ,trm_users creatorUser,trm_users assignerUser,trm_users recieverUser
    ,T_Mess@Task,T_Tmp_Mess@Task,T_DiaoDu@Task,U_Wk@Task assigner,U_Wk@Task reciever
    ,U_Form@Task assignerFrom,U_Form@Task recieverFromwhere 
        T_Mess.TaskId = T_Tmp_Mess.TaskId
    And T_Mess.TaskId = T_DiaoDu.TaskId
    And category.Name = T_Mess.TaskType
    And severity.Name = T_Mess.TaskLevelAnd T_Mess.SendUsrName = creatorUser.User_Name
    And T_Mess.SendFormName  = creatorGroup.group_name
    And creatorUserGroup.User_Id = creatorUser.User_Id
    And creatorUserGroup.Group_Id = creatorGroup.Group_IdAnd T_DiaoDu.DdUsrName = assignerUser.user_Name(+)
    And T_DiaoDu.DdUsrId = assigner.UsrId
    And assigner.FormId = assignerFrom.FormId
    And assignerGroup.group_name = assignerFrom.FormName
    And assignerUserGroup.user_id = assignerUser.user_id(+)
    And assignerUserGroup.group_id = assignerGroup.group_id(+)And T_DiaoDu.ToUsrName = recieverUser.user_Name(+)
    And T_DiaoDu.ToUsrId = reciever.UsrId
    And reciever.FormId = recieverFrom.FormId
    And recieverGroup.group_name = recieverFrom.FormName(+)
    And recieverUserGroup.user_id = recieverUser.user_id(+)
    And recieverUserGroup.group_id = recieverGroup.group_id(+)
    有什么错的地方吗?
      

  3.   

    ...
    And recieverGroup.group_name = recieverFrom.FormName(+)
    ...
    And recieverUserGroup.group_id = recieverGroup.group_id(+)
    ...receiverGroup被左连接到另一个表,就不允许再去左连接receiverFrom表了