Join two objects?

I'm still working on the map in my previous thread about changing the colour of a path and wanted to know if there is a quick and easy way to join two adjacent objects together. Some of the shaded areas in the map are composed of multiple separate objects and I want to join them all into one big mass.
Thanks, Dominic

Hey Dominic,
You possibly already know that you can joing to end points together through Object -> Path -> Join, if not give that a go, but the two points need to be on top of each other in order to do so. To join multiple paths or end points, you could try the same approach, otherwise I may actually leave this one to the experts.
Hope this helped out in some way.

Similar Messages

  • How to make a curve to join two objects editable?

    Hi, I'm involved in a project in which we're doing a visual editor (written in Java). Now, I'm trying to make curves that join two different objects that I'm painting in a class that extends JPanel (this class is what I'm using to paint, inside a JFrame, overriding the method paintComponent). I'm in troubles because I'm using the class QuadCurve2D to make this, but I cannot make it clickable (I'm using the method contains, but it doesn't work everytime), make it editable (for example, setting a square in its middle point to modify its curvature. The point that is used on the middle of the QuadCurve2D when the constructor is called is outside the curve) or something (method, variable, iterator, etc) that could tell me which Points are in the QuadCurve2D.
    After looking for all of that some time, I have no answer, so I'm trying posting it here to find a solution. Is there anyway to make it with the QuadCurve2D class, or do I have to try with some external library?
    Edited by: mccrank on Jul 2, 2009 10:09 AM

    Used the Pen tool, but click on the correct icon on the top left on the Options Bar. That way you can get a Path instead of a Shape Layer.
    Once you have your Path you can stroke it with a Brush or any drawing tool. Various options appear in the Brushes palette. For a dotted line you will need to increase the spacing. If you want dashes, use a square brush and set the Angle Jitter to Direction.

  • Two objects have joined together - how do I split them again?

    I have added two objects to a pdf, and they have mysteriously merged together. This is now causing me a real problem. I have tried deleting the text that is in the first object and recreating it, but Acrobat just joins the two objects together again!
    Am I missing something here? Why is this happening?
    Can I split the two objects again or do I have to do something else entirely?
    Thanks in anticipation
    Rob

    Ok, I think I see what happened. There are actually no permanent text
    objects in a PDF at all.
    What happens is that Acrobat looks at all the text on the page, where
    it is, and what is close. Then it decides how to split these up: what
    you see now seem to be text objects.
    So if you add two lots of text close together, they have no special
    identity, and will indeed seem to become one object.
    Aandi Inston

  • Join two list with condition using caml query in SharePoint 2013 with client object model

    Hi,
    Want to join two list to get all fields from both list.
    Am new to sharepoint and sharepoint 2013. Am working in sharepoint 2013 online apps. Am using context.executeQueryasync to load list and get items from list. Am able to get items from single list with caml query, but not able to get both list field values
    with joins.  I did lot of surfing..but not..
    Below is my code..
    ListName1 : "AssignedTasks"
    ListName2 : "Tasks"
     var assignedQueryTest = "<View><Joins><Join Type='INNER' ListAlias='Tasks'><Eq><FieldRef Name='TaskId' RefType='Id'/><FieldRef List='Tasks' Name='ID' /></Eq></Join></Joins>"
                    + "<ViewFields><FieldRef Name='TitleValue' /><FieldRef Name='ActionItemsValue' /></ViewFields>"
                    + "<ProjectedFields>"
                    + "<Field Name='TitleValue' Type='Lookup' List='Tasks' ShowField='Title' /><Field Name='ActionItemsValue' Type='Lookup' List='Tasks' ShowField='ActionItems' />"
                    + "</ProjectedFields>"
                    + "</View>";
                   var web = context.get_web();
                    var list = web.get_lists().getByTitle("AssingedTasks");
                    var myQuery = new SP.CamlQuery();
                    myQuery.set_viewXml(assignedQueryTest);
                    var myItems = list.getItems(myQuery, "Include(TitleValue,ActionItemsValue)");
                    context.load(myItems);
                    context.executeQueryAsync(function () { if(myItems.get_count()>0){....}
    }, errorCallback);
    Here am able to get "AssignedTasks" list field values but not able to get "Tasks" list field values. 
    Can you please help me to resolve the issue. Or new idea for join. I have add the condition also in the query.
    If anybody have good sample, please provide.
    Thanks,
    Pariventhan
    Pariventhan.S

    Hi Pariventhan,
    I don't know about join but I have a workaround of this problem.
    Declare one variable (itemcollection) globally. Load all the items "AssignedTasks" using context.load.
    In the success method call another CAML query using <IN> tag of the ID of the items from the second list (Assuming you have look-up column of the ID of the first list to the second list).
    If this is not clear to you then please let me know. If possible then I can provide code sample.
    Thanks,
    Aniruddha

  • How to prevent Oracle from using an index when joining two tables ...

    How to prevent Oracle from using an index when joining two tables to get an inline view which is used in an update statement?
    O.K. I think I have to explain what I mean:
    When joining two tables which have many entries sometimes it es better not to use an index on the column used as join criteria.
    I have two tables: table A and table B.
    Table A has 4.000.000 entries and table B has 700.000 entries.
    I have a join of both tables with a numeric column as join criteria.
    There is an index on this column in table A.
    So I instead of
      where (A.col = B.col)I want to use
      where (A.col+0 = B.col)in order to prevent Oracle from using the index.
    When I use the join in a select statement it works.
    But when I use the join as inline view in an update statement I get the error ORA-01779.
    When I remove the "+0" the update statement works. (The column col is unique in table B).
    Any ideas why this happens?
    Thank you very much in advance for any help.
    Regards Hartmut

    I think you should post an properly formatted explain plan output using DBMS_XPLAN.DISPLAY including the "Predicate Information" section below the plan to provide more details regarding your query resp. update statement. Please use the \[code\] and \[code\] tags to enhance readability of the output provided:
    In SQL*Plus:
    SET LINESIZE 130
    EXPLAIN PLAN FOR <your statement>;
    SELECT * FROM TABLE(DBMS_XPLAN.DISPLAY);Usually if you're using the CBO (cost based optimizer) and have reasonable statistics gathered on the database objects used the optimizer should be able to determine if it is better to use the existing index or not.
    Things look different if you don't have statistics, you have outdated/wrong statistics or deliberately still use the RBO (rule based optimizer). In this case you would have to use other means to prevent the index usage, the most obvious would be the already mentioned NO_INDEX or FULL hint.
    But I strongly recommend to check in first place why the optimizer apparently seems to choose an inappropriate index access path.
    Regards,
    Randolf
    Oracle related stuff:
    http://oracle-randolf.blogspot.com/
    SQLTools++ for Oracle:
    http://www.sqltools-plusplus.org:7676/
    http://sourceforge.net/projects/sqlt-pp/

  • Two objects from one table

    My current setup is two tables and two objects with a one to one relationship between them, Object and ObjectMD (metadata).
    Not sure why my predecessors set it up like this but...that's how it is.
    The problem is that my Object table (and thus ObjectMD also) has reached 40 million rows and large joins between Object and ObjectMD are taking forever and are completely unnecessary.
    I want to import the ObjectMD data into the Object table and go forward with a single table. The problem is that the ObjectMD table has it's own java surrounding it and that code is used in way too many places to weed it out. I need to leave the Java object structure in place.
    I think I should be able to create both these objects from a single table, but I can not figure out the descriptor. My set method needs to be getMetaData().setMethod, but of course TL's reflection doesn't like this. I suppose I could create new methods in Object to get/set all these fields and just forward them to the real methods.
    How can I define descriptors to create two objects from a single table?

    What I decided on for my last problem was to use a method to setBar, and inside that method, set the Foo of the Bar.
    Here are my files for future reference:
    --------------------------------------Foo.java-------------------------------------
    public class Foo {
         public int id;
         public String first;
         public Bar bar;
         public void setBar(Bar newBar){
              if(newBar != null){
                   newBar.foo = this;
              this.bar = newBar;
    --------------------------------------Bar.java-------------------------------------
    public class Bar {
         public Foo foo;
         public String second;
    --------------------------------------Descriptors.java-------------------------------------
    public class Descriptors {
         public static void addDescriptors(Project project) {
    project.addDescriptor(Descriptors.buildFooDescriptor());
    project.addDescriptor(Descriptors.buildBarDescriptor());
    private static Descriptor buildFooDescriptor() {
    Descriptor descriptor = new Descriptor();
    //     basic information
    descriptor.setJavaClass(Foo.class);
    descriptor.addTableName("FOO");
    descriptor.setPrimaryKeyFieldName("ID");
    //     mappings
    DirectToFieldMapping directToFieldMapping;
    AggregateObjectMapping aggregateObjectMapping;
    //     id mapping
    directToFieldMapping = new DirectToFieldMapping();
    directToFieldMapping.setAttributeName("id");
    directToFieldMapping.setFieldName("ID");
    descriptor.addMapping(directToFieldMapping);
    //     first mapping
    directToFieldMapping = new DirectToFieldMapping();
    directToFieldMapping.setAttributeName("first");
    directToFieldMapping.setFieldName("FIRST");
    descriptor.addMapping(directToFieldMapping);
    //     bar mapping
    aggregateObjectMapping = new AggregateObjectMapping();
    aggregateObjectMapping.setAttributeName("bar");
    aggregateObjectMapping.setReferenceClass(Bar.class);
    aggregateObjectMapping.setSetMethodName("setBar");
    aggregateObjectMapping.dontAllowNull();
    descriptor.addMapping(aggregateObjectMapping);
    return descriptor;
    private static Descriptor buildBarDescriptor() {
    Descriptor descriptor = new Descriptor();
    // basic information
    descriptor.descriptorIsAggregate();
    descriptor.setJavaClass(Bar.class);
    //     mappings
    DirectToFieldMapping directToFieldMapping;
    //     second mapping
    directToFieldMapping = new DirectToFieldMapping();
    directToFieldMapping.setAttributeName("second");
    directToFieldMapping.setFieldName("SECOND");
    descriptor.addMapping(directToFieldMapping);
    return descriptor;
    ----------------------------------------Go.java------------------------------------
    public class Go {
         public static void main(String[] args) {
              if(args.length != 0){
                   throw new RuntimeException("Arguments are not supported");
              Project project = new Project();
              project.setName("fooBarProject");
              DatabaseLogin login = new DatabaseLogin();
         login.usePlatform(new Oracle9Platform());
         login.setDriverClassName("oracle.jdbc.driver.OracleDriver");
         login.setConnectionString("jdbc:oracle:thin:@nnn.nnn.nnn.nnn:nnnn:SERVICE");
         project.setDatasourceLogin(login);
         Descriptors.addDescriptors(project);
         Server server = project.createServerSession(2, 2);
         server.setLogLevel(oracle.toplink.sessions.SessionLog.FINE);
         server.login("schema", "password");
         Session session = server.acquireClientSession();
         UnitOfWork uow = session.acquireUnitOfWork();
         Foo fooBar = (Foo) uow.newInstance(Foo.class);
         fooBar.id = (int) (Math.random() * 10000);
         fooBar.first = "abcd";
         uow.commit();
         ExpressionBuilder builder = new ExpressionBuilder();
         Foo fooBarLoad = (Foo) session.readObject(Foo.class, builder.get("id").equal(fooBar.id));
         System.out.println("ID:" + fooBarLoad.id + " FIRST:" + fooBarLoad.first + " SECOND:" + fooBarLoad.bar.second );
         session.release();
         server.logout();
    ------------------------------------------------------------------------------------------

  • Infoset join two ODS no authrization

    I have created an Infoset joining two ODS's the primary ODS (grey) has 0Orgunit in it and the second  ODS's (white) hasn't. When you run the query against the infoset the authorization on the orgunit isn't working and you can see the whole of the organization no matter what level of authorization the user has.
    I have looked in RSSM and you can not add the Infoset into the Authorization objects.
    If anyone can shed any light on to why the authorization isn't working it would be appreciated.
    Many thanks
    Jane

    Thanks for your reply but isn't the join different between a infoset and multiprovider .
    Many thanks
    Jane

  • Join two xmltype table using Xquery

    I am wondering how to join two xmltype tables in xml db database. both tables are schema based object-relational tables.
    these are the examples:
    academicProgram table contain batch of academicprogram.xml entries
    <academicProgram>
    <listOfCourse>
    <course><id>1</id></course>
    <course><id>2</id></course>
    </listOfCourse>
    </academicProgram>
    course table contain all the course entries, each of them is an xml file based on the the course schema. for example,
    course1.xml
    <course>
    <id>1</id>
    <title>xxxxxxx</title>
    <description>xxxxxxxxxxxxxx</description>
    </course>
    I used the following xquery code to merge the detailed course information from course table to the academic program information
    select *
    from XMLTable(
    for $program in ora:view("HTU", "ACADEMICPROGRAM")
    return <academicProgram xmlns="http://www.mdanderson.org/schema/APEP/courseCatalog"
         for $node in $program/academicProgram/node()
         return if (name($node) eq "listOfCourse")
              then (
                   <listOfCourse>{
                   for $i in $node/course
                   for $j in ora:view("HTU", "COURSE")/course
                   where $i/id eq $j/id
                   return $j
                   }</listOfCourse>
              else $node
         </academicProgram>
    it did return what I want, but the problem is it take more than 5 minutes to finish. is there someway to make it run faster? I have been struggling for a week, please help.
    thanks in advance.
    Haili

    Does this work...
    SQL> var schemaURL varchar2(256)
    SQL> var schemaPath varchar2(256)
    SQL> --
    SQL> set autotrace on explain
    SQL> set lines 150 pages 0 long 10000
    SQL> --
    SQL> begin
      2    :schemaURL := 'http://aahmb10-147:7575/public/www.mdanderson.org/schema/APEP/custom.xsd';
      3    :schemaPath := '/public/custom.xsd';
      4  end;
      5  /
    PL/SQL procedure successfully completed.
    SQL> call dbms_xmlSchema.deleteSchema(:schemaURL,4)
      2  /
    Call completed.
    SQL> declare
      2    res boolean;
      3    xmlSchema xmlType := xmlType(
      4  '<xs:schema xmlns:apcustom="http://www.mdanderson.org/schema/APEP/custom" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="
    http://www.mdanderson.org/schema/APEP/custom" elementFormDefault="qualified" attributeFormDefault="unqualified">
      5    <xs:element name="CourseCatalogCustomDataType">
      6    <xs:annotation>
      7      <xs:documentation>Comment describing your root element</xs:documentation>
      8     </xs:annotation>
      9    </xs:element>
    10   </xs:schema>');
    11  begin
    12    if (dbms_xdb.existsResource(:schemaPath)) then
    13      dbms_xdb.deleteResource(:schemaPath);
    14    end if;
    15    res := dbms_xdb.createResource(:schemaPath,xmlSchema);
    16  end;
    17  /
    PL/SQL procedure successfully completed.
    SQL> begin
      2    dbms_xmlschema.registerSchema
      3    (
      4      :schemaURL,
      5      xdbURIType(:schemaPath).getClob(),
      6      TRUE,TRUE,FALSE,TRUE
      7    );
      8  end;
      9  /
    PL/SQL procedure successfully completed.
    SQL> begin
      2    :schemaURL := 'http://aahmb10-147:7575/public/www.mdanderson.org/schema/APEP/courseCatalog.xsd';
      3    :schemaPath := '/public/courseCatalog.xsd';
      4  end;
      5  /
    PL/SQL procedure successfully completed.
    SQL> call dbms_xmlSchema.deleteSchema(:schemaURL,4)
      2  /
    Call completed.
    SQL> declare
      2    res boolean;
      3    xmlSchema xmlType := xmlType(
      4  '<?xml version="1.0" encoding="UTF-8"?>
      5  <!--  edited with XMLSpy v2006 rel. 3 U (http://www.altova.com) by John Grossman (UT MD Anderson Cancer Center)
      6    -->
      7  <xs:schema xmlns:xdb="http://xmlns.oracle.com/xdb" xmlns="http://www.mdanderson.org/schema/APEP/courseCatalog" xmlns:xs="http://www.w3.
    org/2001/XMLSchema" xmlns:ns1="http://www.mdanderson.org/schema/APEP/custom" targetNamespace="http://www.mdanderson.org/schema/APEP/courseCa
    talog" elementFormDefault="qualified" attributeFormDefault="unqualified" xdb:storeVarrayAsTable="true">
      8     <xs:import namespace="http://www.mdanderson.org/schema/APEP/custom" schemaLocation="http://aahmb10-147:7575/public/www.mdanderson.or
    g/schema/APEP/custom.xsd"/>
      9     <!-- ########################################  -->
    10     <!-- GLOBAL ELEMENTS  -->
    11     <!-- ########################################  -->
    12     <xs:element name="course" type="CourseType" xdb:defaultTable="COURSE">
    13             <xs:annotation>
    14                     <xs:documentation>Comment describing your root element</xs:documentation>
    15             </xs:annotation>
    16     </xs:element>
    17     <xs:element name="listOfCourse" type="ListOfCourseType" xdb:defaultTable="COURSELIST"/>
    18     <xs:element name="courseCatalog" type="CourseCatalogType" xdb:defaultTable="COURSECATALOG"/>
    19     <!-- ########################################  -->
    20     <!-- GLOBAL TYPES  -->
    21     <!-- ########################################  -->
    22     <xs:complexType name="CompositeIDType" xdb:SQLType="COURSE_COMPOSITEID_T">
    23             <xs:sequence>
    24                     <xs:element name="prefix" xdb:SQLName="PREFIX">
    25                             <xs:simpleType>
    26                                     <xs:restriction base="xs:string">
    27                                             <xs:length value="2"/>
    28                                     </xs:restriction>
    29                             </xs:simpleType>
    30                     </xs:element>
    31                     <xs:element name="level" type="xs:positiveInteger" xdb:SQLName="COURSELEVEL"/>
    32                     <xs:element name="creditHours" type="xs:positiveInteger" xdb:SQLName="CREDITHOURS"/>
    33                     <xs:element name="identNumber" xdb:SQLName="IDENTNUMBER">
    34                             <xs:simpleType>
    35                                     <xs:restriction base="xs:string">
    36                                             <xs:length value="2"/>
    37                                     </xs:restriction>
    38                             </xs:simpleType>
    39                     </xs:element>
    40             </xs:sequence>
    41     </xs:complexType>
    42     <xs:complexType name="CourseType" xdb:SQLType="COURSE_T">
    43             <xs:sequence>
    44                     <xs:element name="id" type="xs:integer" minOccurs="0" xdb:SQLName="ID"/>
    45                     <xs:element name="compositeID" type="CompositeIDType" minOccurs="0" xdb:SQLName="COMPOSITEID"/>
    46                     <xs:element name="title" type="xs:string" minOccurs="0" xdb:SQLName="TITLE"/>
    47                     <xs:element name="description" type="xs:string" minOccurs="0" xdb:SQLName="DESCRIPTION"/>
    48                     <xs:element name="corequisite" type="CompositeIDType" minOccurs="0" maxOccurs="unbounded" xdb:SQLName="COREQUISITE"
    xdb:defaultTable=""/>
    49                     <xs:element name="prerequisite" type="CompositeIDType" minOccurs="0" maxOccurs="unbounded" xdb:SQLName="PREREQUISITE
    " xdb:defaultTable=""/>
    50                     <xs:element name="availability" minOccurs="0" xdb:SQLName="AVAILABILITY">
    51                             <xs:complexType>
    52                                     <xs:sequence>
    53                                             <xs:element name="startDate" type="xs:date" minOccurs="0" xdb:SQLName="STARTDATE"/>
    54                                             <xs:element name="endDate" type="xs:date" minOccurs="0" xdb:SQLName="ENDDATE"/>
    55                                     </xs:sequence>
    56                             </xs:complexType>
    57                     </xs:element>
    58             </xs:sequence>
    59     </xs:complexType>
    60     <xs:complexType name="ListOfCourseType" xdb:SQLType="COURSE_LIST_T">
    61             <xs:sequence minOccurs="0" maxOccurs="unbounded">
    62                     <xs:element name="id" type="xs:positiveInteger" minOccurs="0" xdb:SQLName="ID"/>
    63                     <xs:element ref="course" minOccurs="0"/>
    64             </xs:sequence>
    65     </xs:complexType>
    66     <xs:complexType name="CourseCatalogType" xdb:SQLType="COURSE_CATALOG_T">
    67             <xs:sequence minOccurs="0">
    68                     <xs:element name="id" type="xs:positiveInteger" minOccurs="0" xdb:SQLName="ID"/>
    69                     <xs:element ref="listOfCourse" minOccurs="0"/>
    70             </xs:sequence>
    71     </xs:complexType>
    72  </xs:schema>');
    73  begin
    74    if (dbms_xdb.existsResource(:schemaPath)) then
    75      dbms_xdb.deleteResource(:schemaPath);
    76    end if;
    77    res := dbms_xdb.createResource(:schemaPath,xmlSchema);
    78  end;
    79  /
    PL/SQL procedure successfully completed.
    SQL> begin
      2    dbms_xmlschema.registerSchema
      3    (
      4      :schemaURL,
      5      xdbURIType(:schemaPath).getClob(),
      6      TRUE,TRUE,FALSE,TRUE
      7    );
      8  end;
      9  /
    PL/SQL procedure successfully completed.
    SQL> begin
      2    :schemaURL := 'http://aahmb10-147:7575/public/www.mdanderson.org/schema/APEP/academicProgram.xsd';
      3    :schemaPath := '/public/academicProgram.xsd';
      4  end;
      5  /
    PL/SQL procedure successfully completed.
    SQL> call dbms_xmlSchema.deleteSchema(:schemaURL,4)
      2  /
    Call completed.
    SQL> declare
      2    res boolean;
      3    xmlSchema xmlType := xmlType(
      4  '<?xml version="1.0" encoding="WINDOWS-1252"?>
      5  <!--  edited with XMLSpy v2006 rel. 3 U (http://www.altova.com) by John Grossman (UT MD Anderson Cancer Center)  -->
      6  <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xdb="http://xmlns.oracle.com/xdb" xmlns:ap="http://www.mdanderson.org/sche
    ma/APEP/courseCatalog" targetNamespace="http://www.mdanderson.org/schema/APEP/courseCatalog" elementFormDefault="qualified" attributeFormDef
    ault="unqualified" xdb:storeVarrayAsTable="true">
      7   <xs:include schemaLocation="http://aahmb10-147:7575/public/www.mdanderson.org/schema/APEP/courseCatalog.xsd" />
      8   <!-- ########################################  -->
      9   <!-- GLOBAL ELEMENTS  -->
    10   <!-- ########################################  -->
    11   <xs:element name="academicProgram" type="ap:AcademicProgramType" xdb:defaultTable="ACADEMICPROGRAM">
    12   <xs:annotation>
    13                     <xs:documentation>Comment describing your root element</xs:documentation>
    14             </xs:annotation>
    15     </xs:element>
    16   <!-- ########################################  -->
    17   <!-- GLOBAL Types  -->
    18   <!-- ########################################  -->
    19     <xs:complexType name="ListOfAcademicCredentialType" xdb:SQLType="ACADEMICCREDENTIAL_LIST_T">
    20             <xs:sequence minOccurs="0" maxOccurs="unbounded">
    21                     <xs:element name="credential" type="ap:AcademicCredentialType" minOccurs="0" xdb:SQLName="CREDENTIAL"/>
    22             </xs:sequence>
    23     </xs:complexType>
    24     <xs:complexType name="AcademicCredentialType" xdb:SQLType="ACADEMICCREDENTIAL_T">
    25             <xs:sequence minOccurs="0">
    26                     <xs:element name="id" type="xs:integer" minOccurs="0" xdb:SQLName="ID"/>
    27                     <xs:element name="field" type="xs:string" minOccurs="0" xdb:SQLName="FIELD">
    28                             <xs:annotation>
    29                                     <xs:documentation>Academic or professional field for which the credential is granted. Example: Clini
    ical Laboratory Science</xs:documentation>
    30                             </xs:annotation>
    31                     </xs:element>
    32                     <xs:element name="typeCode" minOccurs="0" xdb:SQLName="TYPECODE">
    33                             <xs:annotation>
    34                                     <xs:documentation>The type of credential. Example: Bachelor of Science</xs:documentation>
    35                             </xs:annotation>
    36                             <xs:simpleType>
    37                                     <xs:restriction base="xs:string">
    38                                             <xs:enumeration value="Bachelor of Science Degree"/>
    39                                             <xs:enumeration value="Certificate"/>
    40                                     </xs:restriction>
    41                             </xs:simpleType>
    42                     </xs:element>
    43             </xs:sequence>
    44     </xs:complexType>
    45     <xs:complexType name="RequirementType" xdb:SQLType="ACADEMICPROGRAM_REQ_T">
    46             <xs:sequence minOccurs="0">
    47                     <xs:element name="typeCode" type="xs:string" minOccurs="0" xdb:SQLName="TYPECODE"/>
    48                     <xs:element name="description" type="xs:string" minOccurs="0" xdb:SQLName="DESCRIPTION"/>
    49                     <xs:element name="scope" type="xs:string" minOccurs="0" xdb:SQLName="SCOPE"/>
    50             </xs:sequence>
    51     </xs:complexType>
    52     <xs:complexType name="ListOfRequirementType" xdb:SQLType="ACADEMICPROGRAM_REQ_L_T">
    53             <xs:sequence minOccurs="0">
    54                     <xs:element name="requirement" type="ap:RequirementType" minOccurs="0" xdb:SQLName="REQUIREMENT"/>
    55             </xs:sequence>
    56     </xs:complexType>
    57     <xs:complexType name="AcademicProgramType" xdb:SQLType="ACADEMICPROGRAM_T">
    58             <xs:sequence>
    59                     <xs:element name="name" type="xs:string" minOccurs="0" xdb:SQLName="NAME"/>
    60                     <xs:element name="description" type="xs:string" minOccurs="0" xdb:SQLName="DESCRIPTION"/>
    61                     <xs:element name="listOfAcademicCredential" type="ap:ListOfAcademicCredentialType" minOccurs="0"/>
    62                     <xs:element name="listOfRelatedParty" minOccurs="0" xdb:SQLName="LISTOFRELATEDPARTY"/>
    63                     <xs:element name="mission" type="xs:string" minOccurs="0" xdb:SQLName="MISSION"/>
    64                     <xs:element name="goals" type="xs:string" minOccurs="0" xdb:SQLName="GOAL"/>
    65                     <xs:element name="objectives" type="xs:string" minOccurs="0" xdb:SQLName="OBJECTIVES"/>
    66                     <xs:element name="competencies" minOccurs="0" xdb:SQLName="COMPETENCIES"/>
    67                     <xs:element name="selectionProcess" minOccurs="0" xdb:SQLName="SELECTIONPROCESS"/>
    68                     <xs:element name="listOfRequirement" type="ap:ListOfRequirementType" minOccurs="0"/>
    69                     <xs:element name="evaluationCriteria" minOccurs="0" xdb:SQLName="EVALUATIONCRITERIA"/>
    70                     <xs:element name="postBaccDegreeInfo" minOccurs="0" xdb:SQLName="POSTBACCDEGREEINFO"/>
    71                     <xs:element name="postBaccCertificateInfo" minOccurs="0" xdb:SQLName="POSTBACCCERTIFICATEINFO"/>
    72                     <xs:element name="advancedPlacement" minOccurs="0" xdb:SQLName="ADVANCEDPLACEMENT"/>
    73                     <xs:element name="graduation" minOccurs="0" xdb:SQLName="GRADUATION"/>
    74                     <xs:element name="curriculum" minOccurs="0" xdb:SQLName="CURRICULUM"/>
    75                     <xs:element name="listOfCourse" type="ap:ListOfCourseType" minOccurs="0" xdb:SQLName="LISTOFCOURSE"/>
    76             </xs:sequence>
    77     </xs:complexType>
    78  </xs:schema>
    79  ');
    80  begin
    81    if (dbms_xdb.existsResource(:schemaPath)) then
    82      dbms_xdb.deleteResource(:schemaPath);
    83    end if;
    84    res := dbms_xdb.createResource(:schemaPath,xmlSchema);
    85  end;
    86  /
    PL/SQL procedure successfully completed.
    SQL> begin
      2    dbms_xmlschema.registerSchema
      3    (
      4      :schemaURL,
      5      xdbURIType(:schemaPath).getClob(),
      6      TRUE,TRUE,FALSE,TRUE
      7    );
      8  end;
      9  /
    PL/SQL procedure successfully completed.
    SQL> insert into COURSE values ( xmltype(
      2  '<?xml version="1.0" encoding="WINDOWS-1252"?>
      3  <?altova_sps http://aahmb10-147:7575/public/www.mdanderson.org/template/APEP/courseInput.sps?>
      4  <course xmlns="http://www.mdanderson.org/schema/APEP/courseCatalog" xmlns:ns1="http://www.mdanderson.org/schema/APEP/custom" xmlns:xdb=
    "http://xmlns.oracle.com/xdb" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.mdanderson.org/schema/APE
    P/courseCatalog http://aahmb10-147:7575/public/www.mdanderson.org/schema/APEP/courseCatalog.xsd">
      5  <id>53</id>
      6  <compositeID>
      7  <prefix>CL</prefix>
      8  <level>4</level>
      9  <creditHours>1</creditHours>
    10  <identNumber>05</identNumber>
    11  </compositeID>
    12  <title>Urinalysis </title>
    13  <description>A review of the anatomy and physiology of the kidney and the formation, elimination, and composition of urine and body flu
    ids. Interpretation of urinary elements, chemical assays, and the correlation with normal and abnormal physiology.</description>
    14  </course>'))
    15  /
    1 row created.
    Execution Plan
    | Id  | Operation        | Name | Rows  | Bytes | Cost (%CPU)| Time     |
    |   0 | INSERT STATEMENT |      |     1 |   100 |     1   (0)| 00:00:01 |
    SQL> insert into COURSE values ( xmltype(
      2  '<?xml version="1.0" encoding="WINDOWS-1252"?>
      3  <?altova_sps http://aahmb10-147:7575/public/www.mdanderson.org/template/APEP/courseInput.sps?>
      4  <course xmlns="http://www.mdanderson.org/schema/APEP/courseCatalog" xmlns:ns1="http://www.mdanderson.org/schema/APEP/custom" xmlns:xdb=
    "http://xmlns.oracle.com/xdb" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.mdanderson.org/schema/APE
    P/courseCatalog http://aahmb10-147:7575/public/www.mdanderson.org/schema/APEP/courseCatalog.xsd">
      5  <id>54</id>
      6  <compositeID>
      7  <prefix>CL</prefix>
      8  <level>4</level>
      9  <creditHours>1</creditHours>
    10  <identNumber>05</identNumber>
    11  </compositeID>
    12  <title>Course 54</title>
    13  <description>A review of the anatomy and physiology of the kidney and the formation, elimination, and composition of urine and body flu
    ids. Interpretation of urinary elements, chemical assays, and the correlation with normal and abnormal physiology.</description>
    14  </course>'))
    15  /
    1 row created.
    Execution Plan
    | Id  | Operation        | Name | Rows  | Bytes | Cost (%CPU)| Time     |
    |   0 | INSERT STATEMENT |      |     1 |   100 |     1   (0)| 00:00:01 |
    SQL> insert into COURSE values ( xmltype(
      2  '<?xml version="1.0" encoding="WINDOWS-1252"?>
      3  <?altova_sps http://aahmb10-147:7575/public/www.mdanderson.org/template/APEP/courseInput.sps?>
      4  <course xmlns="http://www.mdanderson.org/schema/APEP/courseCatalog" xmlns:ns1="http://www.mdanderson.org/schema/APEP/custom" xmlns:xdb=
    "http://xmlns.oracle.com/xdb" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.mdanderson.org/schema/APE
    P/courseCatalog http://aahmb10-147:7575/public/www.mdanderson.org/schema/APEP/courseCatalog.xsd">
      5  <id>55</id>
      6  <compositeID>
      7  <prefix>CL</prefix>
      8  <level>4</level>
      9  <creditHours>1</creditHours>
    10  <identNumber>05</identNumber>
    11  </compositeID>
    12  <title>Course 55</title>
    13  <description>A review of the anatomy and physiology of the kidney and the formation, elimination, and composition of urine and body flu
    ids. Interpretation of urinary elements, chemical assays, and the correlation with normal and abnormal physiology.</description>
    14  </course>'))
    15  /
    1 row created.
    Execution Plan
    | Id  | Operation        | Name | Rows  | Bytes | Cost (%CPU)| Time     |
    |   0 | INSERT STATEMENT |      |     1 |   100 |     1   (0)| 00:00:01 |
    SQL> insert into ACADEMICPROGRAM values ( xmltype (
      2  '<?xml version="1.0" encoding="WINDOWS-1252"?>
      3  <!--Sample XML file generated by XMLSpy v2006 rel. 3 U (http://www.altova.com)-->
      4  <academicProgram xmlns="http://www.mdanderson.org/schema/APEP/courseCatalog" xmlns:ns1="http://www.mdanderson.org/schema/APEP/custom" x
    mlns:xdb="http://xmlns.oracle.com/xdb" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.mdanderson.org/s
    chema/APEP/courseCatalog http://aahmb10-147:7575/public/www.mdanderson.org/schema/APEP/academicProgram.xsd">
      5    <name>Clinical Laboratory Science</name>
      6    <description>The clinical laboratory scientist is an essential member of the health care team, performing a myriad of laboratory proc
    edures aimed at the diagnosis and treatment of disease.</description>
      7    <listOfAcademicCredential>
      8      <credential>
      9        <id>0</id>
    10        <field>String</field>
    11        <typeCode>Bachelor of Science Degree</typeCode>
    12      </credential>
    13      <credential>
    14        <id>0</id>
    15        <field>String</field>
    16        <typeCode>Bachelor of Science Degree</typeCode>
    17      </credential>
    18      <credential>
    19        <id>0</id>
    20        <field>String</field>
    21        <typeCode>Bachelor of Science Degree</typeCode>
    22      </credential>
    23    </listOfAcademicCredential>
    24    <listOfRelatedParty xmlns="http://www.mdanderson.org/schema/APEP/courseCatalog"/>
    25    <mission>String</mission>
    26    <goals>String</goals>
    27    <objectives>String</objectives>
    28    <competencies xmlns="http://www.mdanderson.org/schema/APEP/courseCatalog"/>
    29    <selectionProcess xmlns="http://www.mdanderson.org/schema/APEP/courseCatalog"/>
    30    <listOfRequirement>
    31      <requirement>
    32        <typeCode>String</typeCode>
    33        <description>String</description>
    34        <scope>String</scope>
    35      </requirement>
    36    </listOfRequirement>
    37    <evaluationCriteria xmlns="http://www.mdanderson.org/schema/APEP/courseCatalog"/>
    38    <postBaccDegreeInfo xmlns="http://www.mdanderson.org/schema/APEP/courseCatalog"/>
    39    <postBaccCertificateInfo xmlns="http://www.mdanderson.org/schema/APEP/courseCatalog"/>
    40    <advancedPlacement xmlns="http://www.mdanderson.org/schema/APEP/courseCatalog"/>
    41    <graduation xmlns="http://www.mdanderson.org/schema/APEP/courseCatalog"/>
    42    <curriculum xmlns="http://www.mdanderson.org/schema/APEP/courseCatalog"/>
    43    <listOfCourse>
    44      <id>53</id>
    45      <course>
    46        <id>53</id>
    47        <compositeID>
    48          <prefix>CL</prefix>
    49          <level>4</level>
    50          <creditHours>1</creditHours>
    51          <identNumber>05</identNumber>
    52        </compositeID>
    53        <title>Biochemistry</title>
    54        <description>this is a test for the course biochemistry</description>
    55      </course>
    56      <course>
    57        <id>55</id>
    58        <compositeID>
    59          <prefix>CL</prefix>
    60          <level>4</level>
    61          <creditHours>1</creditHours>
    62          <identNumber>05</identNumber>
    63        </compositeID>
    64        <title>Something Else</title>
    65        <description>this is a test for the course biochemistry</description>
    66      </course>
    67    </listOfCourse>
    68  </academicProgram>'))
    69  /
    1 row created.
    Execution Plan
    | Id  | Operation        | Name | Rows  | Bytes | Cost (%CPU)| Time     |
    |   0 | INSERT STATEMENT |      |     1 |   100 |     1   (0)| 00:00:01 |
    SQL> select extractValue(value(c),'/course/id')
      2    from ACADEMICPROGRAM ap,
      3   table (xmlsequence(extract(value(ap),'/academicProgram/listOfCourse/course','xmlns="http://www.mdanderson.org/schema/APEP/courseCatalo
    g"'))) c
      4  /
                                     53
                                     55
    Execution Plan
    Plan hash value: 3351541143
    | Id  | Operation                    | Name               | Rows  | Bytes | Cost (%CPU)| Time     |
    |   0 | SELECT STATEMENT             |                    |     2 |   126 |   804   (0)| 00:00:10 |
    |   1 |  NESTED LOOPS                |                    |     2 |   126 |   804   (0)| 00:00:10 |
    |*  2 |   INDEX FAST FULL SCAN       | SYS_IOT_TOP_177341 |     2 |    66 |   802   (0)| 00:00:10 |
    |*  3 |   TABLE ACCESS BY INDEX ROWID| ACADEMICPROGRAM    |     1 |    30 |     1   (0)| 00:00:01 |
    |*  4 |    INDEX UNIQUE SCAN         | SYS_C0022632       |     1 |       |     0   (0)| 00:00:01 |
    Predicate Information (identified by operation id):
       2 - filter("SYS_NC_TYPEID$" IS NOT NULL)
       3 - filter(SYS_CHECKACL("ACLOID","OWNERID",xmltype('<privilege
                  xmlns="http://xmlns.oracle.com/xdb/acl.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-ins
                  tance" xsi:schemaLocation="http://xmlns.oracle.com/xdb/acl.xsd
                  http://xmlns.oracle.com/xdb/acl.xsd DAV:http://xmlns.oracle.com/xdb/dav.xsd"><read-properti
                  es/><read-contents/></privilege>'))=1)
       4 - access("NESTED_TABLE_ID"="ACADEMICPROGRAM"."SYS_NC0004200043$")
    Note
       - dynamic sampling used for this statement
    SQL> select updateXML
      2         (
      3            ap.object_value,
      4            '/academicProgram/listOfCourse',
      5            ( select xmlelement
      6                     (
      7                       "listOfCourse",
      8                       xmlattributes('http://www.mdanderson.org/schema/APEP/courseCatalog' as "xmlns"),
      9                       ( select xmlagg ( xmlconcat(extract(object_value,'/course/id'), extract(object_value,'/course'))  )
    10                             from course c,
    11                            table (xmlsequence(extract(ap.object_value,'/academicProgram/listOfCourse/course','xmlns="http://www.mdanders
    on.org/schema/APEP/courseCatalog"'))) api
    12                            where extractValue(c.object_value,'/course/id') = extractValue(value(api),'/course/id')
    13                       )
    14                     ) from dual
    15            ),
    16            'xmlns:="http://www.mdanderson.org/schema/APEP/courseCatalog"'
    17          )
    18     from ACADEMICPROGRAM ap
    19  /
    <?xml version="1.0" encoding="WINDOWS-1252"?>
    <!--Sample XML file generated by XMLSpy v2006 rel. 3 U (http://www.altova.com)--><academicProgram xmlns="http://www.mdanderson.org/schema/AP
    EP/courseC
    atalog" xmlns:ns1="http://www.mdanderson.org/schema/APEP/custom" xmlns:xdb="http://xmlns.oracle.com/xdb" xmlns:xsi="http://www.w3.org/2001/X
    MLSchema-i
    nstance" xsi:schemaLocation="http://www.mdanderson.org/schema/APEP/courseCatalog http://aahmb10-147:7575/public/www.mdanderson.org/schema/AP
    EP/academi
    cProgram.xsd">
      <name>Clinical Laboratory Science</name>
      <description>The clinical laboratory scientist is an essential member of the health care team, performing a myriad of laboratory procedure
    s aimed at
    the diagnosis and treatment of disease.</description>
      <listOfAcademicCredential>
        <credential>
          <id>0</id>
          <field>String</field>
          <typeCode>Bachelor of Science Degree</typeCode>
        </credential>
        <credential>
          <id>0</id>
          <field>String</field>
          <typeCode>Bachelor of Science Degree</typeCode>
        </credential>
        <credential>
          <id>0</id>
          <field>String</field>
          <typeCode>Bachelor of Science Degree</typeCode>
        </credential>
      </listOfAcademicCredential>
      <listOfRelatedParty xmlns="http://www.mdanderson.org/schema/APEP/courseCatalog"/>
      <mission>String</mission>
      <goals>String</goals>
      <objectives>String</objectives>
      <competencies xmlns="http://www.mdanderson.org/schema/APEP/courseCatalog"/>
      <selectionProcess xmlns="http://www.mdanderson.org/schema/APEP/courseCatalog"/>
      <listOfRequirement>
        <requirement>
          <typeCode>String</typeCode>
          <description>String</description>
          <scope>String</scope>
        </requirement>
      </listOfRequirement>
      <evaluationCriteria xmlns="http://www.mdanderson.org/schema/APEP/courseCatalog"/>
      <postBaccDegreeInfo xmlns="http://www.mdanderson.org/schema/APEP/courseCatalog"/>
      <postBaccCertificateInfo xmlns="http://www.mdanderson.org/schema/APEP/courseCatalog"/>
      <advancedPlacement xmlns="http://www.mdanderson.org/schema/APEP/courseCatalog"/>
      <graduation xmlns="http://www.mdanderson.org/schema/APEP/courseCatalog"/>
      <curriculum xmlns="http://www.mdanderson.org/schema/APEP/courseCatalog"/>
      <listOfCourse xmlns="http://www.mdanderson.org/schema/APEP/courseCatalog">
        <id xmlns="http://www.mdanderson.org/schema/APEP/courseCatalog">53</id>
        <course xmlns="http://www.mdanderson.org/schema/APEP/courseCatalog" xmlns:ns1="http://www.mdanderson.org/schema/APEP/custom" xmlns:xdb="
    http://xml
    ns.oracle.com/xdb" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.mdanderson.org/schema/APEP/courseCat
    alog http:
    //aahmb10-147:7575/public/www.mdanderson.org/schema/APEP/courseCatalog.xsd">
          <id>53</id>
          <compositeID>
            <prefix>CL</prefix>
            <level>4</level>
            <creditHours>1</creditHours>
            <identNumber>05</identNumber>
          </compositeID>
          <title>Urinalysis </title>
          <description>A review of the anatomy and physiology of the kidney and the formation, elimination, and composition of urine and body fl
    uids. Inte
    rpretation of urinary elements, chemical assays, and the correlation with normal and abnormal physiology.</description>
        </course>
        <id xmlns="http://www.mdanderson.org/schema/APEP/courseCatalog">55</id>
        <course xmlns="http://www.mdanderson.org/schema/APEP/courseCatalog" xmlns:ns1="http://www.mdanderson.org/schema/APEP/custom" xmlns:xdb="
    http://xml
    ns.oracle.com/xdb" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.mdanderson.org/schema/APEP/courseCat
    alog http:
    //aahmb10-147:7575/public/www.mdanderson.org/schema/APEP/courseCatalog.xsd">
          <id>55</id>
          <compositeID>
            <prefix>CL</prefix>
            <level>4</level>
            <creditHours>1</creditHours>
            <identNumber>05</identNumber>
          </compositeID>
          <title>Course 55</title>
          <description>A review of the anatomy and physiology of the kidney and the formation, elimination, and composition of urine and body fl
    uids. Inte
    rpretation of urinary elements, chemical assays, and the correlation with normal and abnormal physiology.</description>
        </course>
      </listOfCourse>
    </academicProgram>
    Execution Plan
    Plan hash value: 1698158615
    | Id  | Operation           | Name               | Rows  | Bytes | Cost (%CPU)| Time     |
    |   0 | SELECT STATEMENT    |                    |     1 | 47932 |     3   (0)| 00:00:01 |
    |   1 |  SORT AGGREGATE     |                    |     1 | 13818 |            |          |
    |*  2 |   HASH JOIN         |                    |     1 | 13818 |     5  (20)| 00:00:01 |
    |*  3 |    INDEX RANGE SCAN | SYS_IOT_TOP_177341 |     1 |    33 |     2   (0)| 00:00:01 |
    |*  4 |    TABLE ACCESS FULL| COURSE             |     3 | 41355 |     3   (0)| 00:00:01 |
    |   5 |  FAST DUAL          |                    |     1 |       |     2   (0)| 00:00:01 |
    |*  6 |  TABLE ACCESS FULL  | ACADEMICPROGRAM    |     1 | 47932 |     3   (0)| 00:00:01 |
    Predicate Information (identified by operation id):
       2 - access("COURSE"."SYS_NC00009$"="ID")
       3 - access("NESTED_TABLE_ID"=:B1)
           filter("SYS_NC_TYPEID$" IS NOT NULL)
       4 - filter(SYS_CHECKACL("ACLOID","OWNERID",xmltype('<privilege
                  xmlns="http://xmlns.oracle.com/xdb/acl.xsd"
                  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                  xsi:schemaLocation="http://xmlns.oracle.com/xdb/acl.xsd
                  http://xmlns.oracle.com/xdb/acl.xsd DAV:http://xmlns.oracle.com/xdb/dav.xsd"><read
                  -properties/><read-contents/></privilege>'))=1)
       6 - filter(SYS_CHECKACL("ACLOID","OWNERID",xmltype('<privilege
                  xmlns="http://xmlns.oracle.com/xdb/acl.xsd"
                  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                  xsi:schemaLocation="http://xmlns.oracle.com/xdb/acl.xsd
                  http://xmlns.oracle.com/xdb/acl.xsd DAV:http://xmlns.oracle.com/xdb/dav.xsd"><read
                  -properties/><read-contents/></privilege>'))=1)
    Note
       - dynamic sampling used for this statement
    SQL>

  • Joining two lists

    Hi,
    Let's say I have a class Car
    public class Car{
      private int id;
      private String make;
      private String model;
      //getters and setters
    }Now I'm going to some db and fill a List<Car>,
    List<Car> results1 = getCarsFromDB(String someCriteria);and I do the same but this time I'm going to another db,
    List<Car> results2 = getCarsFromAnotherDB(String someCriteria);What I want is to create a list with the two results lists. Using contains method from List doesn't work because the objects are different although the have the same data. Is there a simple way of joining this? (in my example, two objects are equal if they have the same idthanks in advance,
    Manuel Leiria

    ok, I have now an equals and hashCode method in my
    Car but I can't see how the Collections.addAll can
    help me! When joining the two lists in a resultlist,
    at some point I must compare the Car objects. Am I
    wrong?
    thanks,
    Manuel leiriaso if I understand you, you're trying to merge 2
    collections, and avoid duplicates? sounds like a job
    for Sets, then!yes, I've changed my final list to a set. It's better
    thanks,
    Manuel Leiria

  • How to join two tables

    hi
    how to join two tables using inner join  if the first table has two primary keys and second table has 3 primary keys

    Would describe type of joins in ABAP, which might differ with other joins.
    The join syntax represents a recursively nestable join expression. A join expression consists of a left-hand and a right- hand side, which are joined either by means of INNER JOIN or LEFT OUTER JOIN. Depending on the type of join, a join expression can be either an inner (INNER) or an outer (LEFT OUTER) join. Every join expression can be enclosed in round brackets. If a join expression is used, the SELECT command circumvents SAP buffering.
    On the left-hand side, either a single database table, a view dbtab_left, or a join expression join can be specified. On the right-hand side, a single database table or a view dbtab_right as well as join conditions join_cond can be specified after ON. In this way, a maximum of 24 join expressions that join 25 database tables or views with each other can be specified after FROM.
    AS can be used to specify an alternative table name tabalias for each of the specified database table names or for every view. A database table or a view can occur multiple times within a join expression and, in this case, have various alternative names.
    The syntax of the join conditions join_cond is the same as that of the sql_cond conditions after the addition WHERE, with the following differences:
    At least one comparison must be specified after ON.
    Individual comparisons may be joined using AND only.
    All comparisons must contain a column in the database table or the view dbtab_right on the right-hand side as an operand.
    The following additions not be used: NOT, LIKE, IN.
    No sub-queries may be used.
    For outer joins, only equality comparisons (=, EQ) are possible.
    If an outer join occurs after FROM, the join condition of every join expression must contain at least one comparison between columns on the left-hand and the right-hand side.
    In outer joins, all comparisons that contain columns as operands in the database table or the view dbtab_right on the right-hand side must be specified in the corresponding join condition. In the WHERE condition of the same SELECT command, these columns are not allowed as operands.
    Resulting set for inner join
    The inner join joins the columns of every selected line on the left- hand side with the columns of all lines on the right-hand side that jointly fulfil the join_cond condition. A line in the resulting set is created for every such line on the right-hand side. The content of the column on the left-hand side may be duplicated in this case. If none of the lines on the right-hand side fulfils the join_cond condition, no line is created in the resulting set.
    Resulting set for outer join
    The outer join basically creates the same resulting set as the inner join, with the difference that at least one line is created in the resulting set for every selected line on the left-hand side, even if no line on the right-hand side fulfils the join_cond condition. The columns on the right-hand side that do not fulfil the join_cond condition are filled with null values.
    Note
    If the same column name occurs in several database tables in a join expression, they have to be identified in all remaining additions of the SELECT statement by using the column selector ~.
    Example
    Join the columns carrname, connid, fldate of the database tables scarr, spfli and sflight by means of two inner joins. A list is created of the flights from p_cityfr to p_cityto. Alternative names are used for every table.
    PARAMETERS: p_cityfr TYPE spfli-cityfrom,
    p_cityto TYPE spfli-cityto.
    DATA: BEGIN OF wa,
    fldate TYPE sflight-fldate,
    carrname TYPE scarr-carrname,
    connid TYPE spfli-connid,
    END OF wa.
    DATA itab LIKE SORTED TABLE OF wa
    WITH UNIQUE KEY fldate carrname connid.
    SELECT ccarrname pconnid f~fldate
    INTO CORRESPONDING FIELDS OF TABLE itab
    FROM ( ( scarr AS c
    INNER JOIN spfli AS p ON pcarrid = ccarrid
    AND p~cityfrom = p_cityfr
    AND p~cityto = p_cityto )
    INNER JOIN sflight AS f ON fcarrid = pcarrid
    AND fconnid = pconnid ).
    LOOP AT itab INTO wa.
    WRITE: / wa-fldate, wa-carrname, wa-connid.
    ENDLOOP.
    Example
    Join the columns carrid, carrname and connid of the database tables scarr and spfli using an outer join. The column connid is set to the null value for all flights that do not fly from p_cityfr. This null value is then converted to the appropriate initial value when it is transferred to the assigned data object. The LOOP returns all airlines that do not fly from p_cityfr.
    PARAMETERS p_cityfr TYPE spfli-cityfrom.
    DATA: BEGIN OF wa,
    carrid TYPE scarr-carrid,
    carrname TYPE scarr-carrname,
    connid TYPE spfli-connid,
    END OF wa,
    itab LIKE SORTED TABLE OF wa
    WITH NON-UNIQUE KEY carrid.
    SELECT scarrid scarrname p~connid
    INTO CORRESPONDING FIELDS OF TABLE itab
    FROM scarr AS s
    LEFT OUTER JOIN spfli AS p ON scarrid = pcarrid
    AND p~cityfrom = p_cityfr.
    LOOP AT itab INTO wa.
    IF wa-connid = '0000'.
    WRITE: / wa-carrid, wa-carrname.
    ENDIF.
    ENDLOOP.

  • Joining two tables in two different schema

    Hi All,
    I have a requirement to join two tables in two different schema. How to join these two tables in view object.
    Many thanks in advance.
    Regards
    Kaushik Gopalakrishnan

    1) If these tables are in one and same database instance, then you can join them by specifying the fully-qualified table names (inlcuding the schema name), for example:
    SELECT ...
    FROM schema_A.table1 T1, schema_B.table2 T2
    WHERE T2.parent_code = T1.code
         AND ...2) If the tables are in different database instances, then you can create a database link in one of the databases and access the table from the other database via the DB link, for example:
    SELECT ...
    FROM schema_A.table1 T1, schema_B.table2@mydblink T2
    WHERE T2.parent_code = T1.code
         AND ...3) If the tables are in different database instances and there is no option for DB links, then you cannot join the tables in an ADF ViewObject.
    Dimitar

  • Problem encountered when join two remote tables in a materialized view

    I'm using oracle 9.2.0.6
    1> I have two tables:
    CREATE TABLE TEST
    A VARCHAR2(100 BYTE),
    C DATE
    CREATE TABLE TEST1
    A VARCHAR2(100 BYTE),
    B TIMESTAMP
    2>. I defined a prebuild table:
    CREATE TABLE MV_TEST1
    ID1 ROWID,
    A VARCHAR2(100 BYTE),
    ID2 ROWID,
    B TIMESTAMP(6),
    C DATE
    3> I created mview logs:
    CREATE MATERIALIZED VIEW LOG ON PSI_TEST.TEST
    WITH ROWID
    INCLUDING NEW VALUES;
    CREATE MATERIALIZED VIEW LOG ON PSI_TEST.TEST1
    WITH ROWID
    INCLUDING NEW VALUES;
    4> when I create mview:
    CREATE MATERIALIZED VIEW PSI_TEST.MV_TEST1
    ON PREBUILT TABLE WITH REDUCED PRECISION
    REFRESH FAST ON DEMAND
    WITH PRIMARY KEY
    AS
    select
    test.rowid id1,
    test.a,
    test1.rowid id2,
    test1.b,
    cast(null as date) c
    from test , test1
    where test.a = test1.a(+);
    It is created successfully.
    5> problem:
    when I use remote tables to do the same thing, say test and test1 are in another instance and are connected by a dbLink, I couldn't create the mview successfully:
    CREATE MATERIALIZED VIEW PSI_TEST.MV_TEST1
    ON PREBUILT TABLE WITH REDUCED PRECISION
    REFRESH FAST ON DEMAND
    WITH PRIMARY KEY
    AS
    select
    a.rowid id1,
    a.a,
    b.rowid id2,
    b.b,
    cast(null as date) c
    from test@dbl a, test1@dbl b
    where a.a = b.a(+);
    when run above statement, I got:
    ORA-12015: cannot create a fast refresh materialized view from a complex query
    Any ideas? Or joining two table through a dblink for a mview is not allowed at all?
    Thanks in advance.

    No one has a clue?
    Message was edited by:
    lzhwxy

  • Need help to join two tables using three joins, one of which is a (between) date range.

    I am trying to develop a query in MS Access 2010 to join two tables using three joins, one of which is a (between) date range. The tables are contained in Access. The reason
    the tables are contained in access because they are imported from different ODBC warehouses and the data is formatted for uniformity. I believe this cannot be developed using MS Visual Query Designer. I think writing a query in SQL would be suiting this project.
    ABCPART links to XYZPART. ABCSERIAL links to XYZSERIAL. ABCDATE links to (between) XYZDATE1 and ZYZDATE2.
    [ABCTABLE]
    ABCORDER
    ABCPART
    ABCSERIAL
    ABCDATE
    [ZYXTABLE]
    XYZORDER
    XYZPART
    XYZSERIAL
    XYZDATE1
    XYZDATE2

    Thank you for the looking at the post. The actual table names are rather ambiguous. I renamed them so it would make more sense. I will explain more and give the actual names. What I do not have is the actual data in the table. That is something I don't have
    on this computer. There are no "Null" fields in either of the tables. 
    This table has many orders (MSORDER) that need to match one order (GLORDER) in GLORDR. This is based on MSPART joined to GLPART, MSSERIAL joined to GLSERIAL, and MSOPNDATE joined if it falls between GLSTARTDATE and GLENDDATE.
    [MSORDR]
    MSORDER
    MSPART
    MSSERIAL
    MSOPNDATE
    11111111
    4444444
    55555
    2/4/2015
    22222222
    6666666
    11111
    1/6/2015
    33333333
    6666666
    11111
    3/5/2015
    This table has one order for every part number and every serial number.
    [GLORDR]
    GLORDER
    GLPART
    GLSERIAL
    GLSTARTDATE
    GLENDDATE
    ABC11111
    444444
    55555
    1/2/2015
    4/4/2015
    ABC22222
    666666
    11111
    1/5/2015
    4/10/2015
    AAA11111
    555555
    22222
    3/2/2015
    4/10/2015
    Post Query table
    GLORDER
    MSORDER
    GLSTARTDATE
    GLENDDATE
    MSOPNDATE
    ABC11111
    11111111
    1/2/2015
    4/4/2015
    2/4/2015
    ABC22222
    22222222
    1/5/2015
    4/10/2015
    1/6/2015
    ABC22222
    33333333
    1/5/2015
    4/10/2015
    3/5/2015
    This is the SQL minus the between date join.
    SELECT GLORDR.GLORDER, MSORDR.MSORDER, GLORDR.GLSTARTDATE, GLORDR.GLENDDATE, MSORDR.MSOPNDATE
    FROM GLORDR INNER JOIN MSORDR ON (GLORDR.GLSERIAL = MSORDR.MSSERIAL) AND (GLORDR.GLPART = MSORDR.MSPART);

  • Can you join two DSO's?

    We have tried joining two DSO's and are getting the warning that "more than one datasource has been used in this report". It appears that the DSO driver does not support joins. The report runs but it is VERY slow, the same sort of performance you get when you try to join data from two datasources that are actually different (like two different SQL Server databases or an Oracle table joined to a SQL Server table). It appears that this is not a supported function with the DSO driver. Any thoughts?

    Yes, we have created the joins between the two DSOs. We are looking into using the Open SQL driver to go against the base tables to see if that will work.  This is how the original ODS driver used to work.
    Update: After changing the join type to a left outer join the performance improved signficantly. Although not ideal it looks like it will be fine for our requirements. This particular report will be run monthly and scheduled to run overnight.
    Edited by: Mike Garrett on Oct 27, 2009 4:28 PM

  • Additional data on relationship between two objects

    Hi
    We have a requirement to capture additional data on a relationship between two objects.  The data to be captured are custom fields that are unique to the relationship between the objects and not specific to either of the objects.
    We created a new object type and related it to the position (S)and the job (C) object.  In the customising (Personnel Management/Personnel Development/Basic Settings/Maintain Relationships there is an option to set up Additional Data.  There are however several restrictions (e.g. the substructure has to be in T77AD).  When you set up an existing substructure (e.g. PAD22) and screen (e.g. 3000), it works really well, however we have not been able to get this to read our own substructure and screen (since there is no customer include on HRP1001 and the 'Additional data' button seems to go to MP100100 to find the screen).
    My question is two fold:
    a) Is this an allowed customisation (e.g. can we create our own substructure, screen and Query string)? And if so, how does the data get into T77AD (since SAP recommends that data should not be added to this table)? and
    b) Is there any documentation on this (thus far I have only received info on how to enhance infotypes which I don't think is relevant???)?
    If this can not be maintained is there any other suggestions on how to deal with this scenario?
    Any assistance will be appreciated.
    Regards
    Liezl

    Hi everyone
    Thanks for everyone who tried to assist us with this.  I am happy to report that our in-house guru's have found the answer.  So, for anyone who is interested:
    In programme MP100100 you have a screen 6000 which is a customer enhancements screen.  We set up two in-house function modules for the PBO and PAI with its own screen and added an append structure to PAD31 to add the fields required.  In the configuration, we then specified PAD31 as the substructure with screen 6000 and then also specified our own PBO and PAI function modules.  The parameters required for screen 6000 is set up within our own customer screens.
    Hope this will be helpful to someone - it certainly seemed to open up some doors for us!
    Regards
    Liezl

Maybe you are looking for

  • I think my hard disk is spoiled but I'm not sure?

    I have a Macbook Pro bought in 2012. I am a heavy Mac user because I am in college and I both study and entertain myself using my Macbook. So 2 months ago my battery spoiled. I took it to a Mac store and they said I reached my cycle and I have to pay

  • [CS3][JS]Find active Library

    Hi, I have more libraries in my library panel.I want to know which is the active library? What is the code I have to use? Please suggest me. Regards Kumar

  • When I try to check for updates on my iPhone 4, it checks endlessly.

    I also can't check for updates or install through iTunes as it doesn't seem to think the phone is plugged in, ''Connect this iPhone using a USB cable in order to update or restore its software.''

  • Time Machine Preparing Forever

    Use TM for over a year wihtout any issues. Yesterday it started to stuck in "Preparing". I don't use any anti-viruses and excluded spotlight from TM. Didn't help. Downloaded TM Buddy Widget and here is its log: Starting standard backup Backing up to:

  • Should i download the mackeeper for my mac?

    I was wondering if i should download this mackeeper ad that keeps poping up on my MacBook Pro???