Announcement

Collapse
No announcement yet.

Left outer Join

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Left outer Join

    Hallo,
    ich hab 2tabellen denen gemeinsam ist die UserId eigentlich würde mir schon die Tabelle "AgentQueueActivationHist" reichen jedoch fehtl dort noch die Workgroup.

    also erstmal das was ich habe:
    Code:
         "AgentQueueActivationHist"."UserId", (String)
         "AgentQueueActivationHist"."Workgroup", (String)
         "AgentQueueActivationHist"."ActivationFlag", (Integer)
    
         "AgentActivityLog"."UserId",
         "AgentActivityLog"."LoggedIn(Integer; SmallInt)"
    ich würde jetzt gerne alle UserID haben die eingeloggt sind ("AgentActivityLog"."LoggedIn") und dafür aktiviert sind ("AgentQueueActivationHist"."ActivationFlag").. und ich möchte das ganze auf eine Workgroup beschränken können bzw nur eine bestimmte Workgroup haben.

    kann mir evtl jmd helfen wie das ganze dort dann aussieht? Schonmal besten dank im voraus!

    Gruss

  • #2
    http://de.wikibooks.org/wiki/Einf%C3...QL:_OUTER_JOIN

    Comment


    • #3
      hallo ebis
      danke für die info..

      ich hab mir das hier jetzt mal zusammen gebastelt, aber er meckert andauernd das bei FROM(dem zweten) was falsch ist, aber was??

      Code:
      SELECT "AgentActivityLog"."UserId",
      	  "AgentActivityLog"."LoggedIn"
      	  
      FROM AgentActivityLog INNER JOIN
      
       (SELECT "AgentQueueActivationHist"."UserId",
           "AgentQueueActivationHist"."Workgroup", 
           "AgentQueueActivationHist"."ActivationFlag",
          	FROM"AgentQueueActivationHist"
          	Where "AgentQueueActivationHist"."Workgroup" = ('foo')
          	)

      Comment


      • #4
        Komma zuviel

        Comment


        • #5
          jetzt meckert er das bei On was nicht richtig ist.

          ist das ansonsten richtig was ich da gebastelt habe? bekomm ich dadurch das ergebnis was ich gerne hätte?

          Comment


          • #6
            ich sehe kein ON in Deinem Beispiel, dann wird das fehlende "ON" wohl das Problem sein
            ist das ansonsten richtig was ich da gebastelt habe?
            zumindest umständlich...

            Comment


            • #7
              Code:
              SELECT "AgentActivityLog"."UserId",
              	  "AgentActivityLog"."LoggedIn"
              	  
              FROM AgentActivityLog INNER JOIN
              
               (SELECT "AgentQueueActivationHist"."UserId",
                   "AgentQueueActivationHist"."Workgroup", 
                   "AgentQueueActivationHist"."ActivationFlag",
                  	FROM"AgentQueueActivationHist"
                  	ON "AgentQueueActivationHist"."Workgroup" = ('foo')
                  	)
              so jetzt ists da, aber ich hab grade was festgestellt.. das nützt mir leider garnichts, da ich kein datum bzw kein timestamp habe in dieser tabelle.. mist ganze mühe umsonst..

              Comment


              • #8
                Originally posted by Colttt View Post
                Code:
                SELECT "AgentActivityLog"."UserId",
                	  "AgentActivityLog"."LoggedIn"
                	  
                FROM AgentActivityLog INNER JOIN
                
                 (SELECT "AgentQueueActivationHist"."UserId",
                     "AgentQueueActivationHist"."Workgroup", 
                     "AgentQueueActivationHist"."ActivationFlag",
                    	FROM"AgentQueueActivationHist"
                    	ON "AgentQueueActivationHist"."Workgroup" = ('foo')
                    	)
                so kommt was raus
                [HIGHLIGHT="SQL"]SELECT AAL.UserId
                , AAL.LoggedIn
                FROM AgentActivityLog AS AAL
                JOIN AgentQueueActivationHist AS AQAH ON AQAH.UserID = AAL.UserID
                WHERE AQAH.Workgroup = 'foo'[/HIGHLIGHT]

                und so sollte es auf Deien umständliche Art gehen
                [Highlight="SQL"]SELECT AAL.UserId
                , AAL.LoggedIn
                FROM AgentActivityLog AS AAL
                JOIN (SELECT AgentQueueActivationHist.UserId
                , AgentQueueActivationHist.Workgroup
                , AgentQueueActivationHist.ActivationFlag
                FROM AgentQueueActivationHist
                WHERE AgentQueueActivationHist.Workgroup = 'foo'
                ) AS X ON X.UserId = AAL.UserId[/Highlight]

                Comment

                Working...
                X