| 
					
							
        
    
        
						
			 | 
			
			
					    
					
        
         
          
         
	
            | ?... MSSQL 7.0 Syntaks, at finde manglende~ Fra : mj@privat.dk | 
  Dato :  11-02-01 18:17 |  
  |   
            Hej NG's      
 Er der en der kan hjælpe med nedenstående SQL Syntaks til MSSQL 7.0
 
 
 Mit problem er, jeg skal finde ud af hvilket nye delprod. der skal
 indgår i forskellige hovedprod.       
 Alle hovedprod har en kode for, hvilket delprod der skal være i denne.
 
 
 SQL resultatet skulle gerne se ud som nederste på denne side      
 
 Choko1 skal have tilført nyt delprod ( 6, 7)       
 Choko2 skal have tilført nyt delprod ( 5, 6, 7)      
 Choko3 skal have tilført nyt delprod ( 6, 8)      
 
 Bemærk: at choko1 i forevejen har delprod 5 hvorfor choko1 ikke skal
 komme med ud i SQL resultatet med delprod 5 selvom choko1 har kode 1
 for tilgang af nye delprod.
 
 NB: Jeg ved godt dette er et lidt kryptisk ?... 
 
 Tabel 1      
 HovedProd   Delprod      Kode_for_tilgang_af_ny_delprod
 Choko1      1      1
 Choko1      2      1
 Choko1      3      1
 Choko1      4      1
 Choko1      5      1
 Choko2      1      1
 Choko2      2      1
 Choko2      3      1
 Choko2      4      1
 Choko3      1      2
 Choko3      2      2
 Choko3      3      2
 
 
 Tabel 2      
       Nyt Delprod   Kode_for_tilgang_af_ny_delprod
       5      1
       6      1
       7      1
       6      2
       8      2
 
 
 SQL resultat       
 HovedProd   Nyt Delprod   Kode_for_tilgang_af_ny_delprod
 Choko1      6      1
 Choko1      7      1
 Choko2      5      1
 Choko2      6      1
 Choko2      7      1
 Choko3      6      2
 Choko3      8      2
 
 
 Mvh
 Michael
 
  
            
             |   |   
            
        
 
            
         
           Nis Jørgensen (11-02-2001) 
         
	
            | Kommentar Fra : Nis Jørgensen | 
  Dato :  11-02-01 18:55 |  
  |   
            On Sun, 11 Feb 2001 17:16:48 GMT, mj@privat.dk wrote:
 
 >Tabel 1      
 >HovedProd   Delprod      Kode_for_tilgang_af_ny_delprod
 >Choko1      1      1
 >Choko1      2      1
 >Choko1      3      1
 >Choko1      4      1
 >Choko1      5      1
 >Choko2      1      1
 >Choko2      2      1
 >Choko2      3      1
 >Choko2      4      1
 >Choko3      1      2
 >Choko3      2      2
 >Choko3      3      2
 
 Din database er tilsyneladende ikke normaliseret. Du vil gøre livet lettere for
 dig selv ved at normalisere den til
 
 Tabel 1A
 HovedProd   KFTAND
 Choko1      1
 Choko2      1
 Choko3      2
 
 Tabel 1B      
 HovedProd   Delprod
 Choko1      1
 Choko1      2
 Choko1      3
 Choko1      4
 Choko1      5
 Choko2      1
 Choko2      2
 Choko2      3
 Choko2      4
 Choko3      1
 Choko3      2
 Choko3      3
 
 Tabel 2      
 Nyt Delprod   KFTAND
 5      1
 6      1
 7      1
 6      2
 8      2
 
 Så kan du bruge noget i retning af:
 
 SELECT
    Hovedprod,[Nyt Delprod], Kode_for_tilgang_af_ny_delprod
 FROM 
    [Tabel 1A] INNER JOIN [Tabel 2] ON [Tabel 1A].KFTAND = [Tabel 2].KFTAND
 WHERE 
    [Nyt Delprod] NOT IN 
       (SELECT Delprod 
       FROM [Tabel 1B] 
       WHERE [Tabel 1B].Hovedprod = [Tabel 1A].Hovedprod)
 
 (Noget ligenende kan selvfølgelig laves med din nuværende struktur og noget
 DISTINCT eller GROUP BY)
 
 -- 
 Med venlige hilsner
 
 Nis Jørgensen, Albertslund
 
 Actual code behavior may differ from intended.
  
            
             |   |   
            
        
 
            
         
           mj@privat.dk (11-02-2001) 
         
	
            | Kommentar Fra : mj@privat.dk | 
  Dato :  11-02-01 19:35 |  
  |   
            Nis Jørgensen  skrev: 
 
 
 Klip
 >
 >Så kan du bruge noget i retning af:
 >
 >SELECT
 >   Hovedprod,[Nyt Delprod], Kode_for_tilgang_af_ny_delprod
 >FROM 
 >   [Tabel 1A] INNER JOIN [Tabel 2] ON [Tabel 1A].KFTAND = [Tabel 2].KFTAND
 >WHERE 
 >   [Nyt Delprod] NOT IN 
 >      (SELECT Delprod 
 >      FROM [Tabel 1B] 
 >      WHERE [Tabel 1B].Hovedprod = [Tabel 1A].Hovedprod)
 >
 >(Noget ligenende kan selvfølgelig laves med din nuværende struktur og noget
 >DISTINCT eller GROUP BY)
 
 Foreløbig tak for dit hurtige svar, jeg vil forsøge at ændre
 strukturen i min base (32000 records i delprod samt ca 1500 records i
 hovedprod)
 
 mvh Michael
 
  
            
             |   |   
            
        
 
            
         
           mj@privat.dk (12-02-2001) 
         
	
            | Kommentar Fra : mj@privat.dk | 
  Dato :  12-02-01 21:59 |  
  |   
            Nis Jørgensen  skrev: 
 
 Klip
 >
 >Så kan du bruge noget i retning af:
 >
 Jeg takker... det virkede efter strukturændring.
 
 mvh
 Michael
 
 Klip
  
            
             |   |   
            
        
 
    
 
					
					 
			 | 
			
				
        
			 |