Visualizzazione dei risultati da 1 a 3 su 3

Discussione: confronto tra query

  1. #1

    confronto tra query

    Ciao ragazzi,
    ho due tab (magcamare, listec) dello stesso db che contengono due campi uguali (codice , descrizione).
    La prima tab mag è per cosi dire statica, mente la seconda viene aggiornata continuamente nei due campi codice e descrizione. La mia esigenza è creare uno script in automatico che confronta la differenza tra i due campi delle due tab e mi aggiorna la tab statica magcamare.

    Sto procedendo per passi:

    1. Prima individuo i codici uguali nelle tab.
    2. Estraggo e stampo i codici diversi.
    3. Aggiorno i codici diversi.

    PASSO 1

    codice:
    
    <%	
      set elencamag=conn.execute("select * from magcamare ")
    do while not elencamag.eof 
    		 
    set elencalc=conn.execute("select * from listec where codice = '"& elencamag("codice") &"'")
    
    if  elencalc.eof = false then
    if elencamag("codice") =  elencalc("articolo")  then%>
    
    
    <%= elencamag("codice") %> - <%= elencamag("descrizione") %>
    
    
    <%= elencalc("codice") %> - <%= elencalc("descrizione") %>
    
    
    <%
     end If
    end If	
     elencamag.movenext
    loop			
    			
    %>
    …..ora come faccio a tirare fuori i rimanenti codici che sono proprio quelli che mi interessano….

    Qualcuno mi da un suggerimento…come procedere…

    Grazie

  2. #2
    ragiona su questo metodo

    codice:
    SELECT 
       elenco_campi 
    FROM
       tabella_dinamica
    WHERE
       campo_id NOT IN (
                        SELECT 
                          campo_id 
                        FROM 
                          tabella_statica
                        )
    e adattalo al tuo caso

  3. #3
    grazie optime...ho imparato un'altra cosa, conoscevo il comando IN ma non pensavo potesse contenere un'altra select....

    ecco il codice risultante:

    codice:
             set elencalc=conn.execute("select articolo, descr_articolo FROM listec where articolo NOT IN (select codice from magcamare) ")
    	do while not elencalc.eof
    	
    Response.Write elencalc("articolo")&"--" & elencalc("descr_articolo") & "
    " 
    elencalc.movenext
    loop
    ora sono al passo 3 invece che stampare i record diversi aggiorno la tab statica....ma come faccio a drgli mla condizione where per aggiornare proprio il codice corrispondente

    codice:
    conn.execute("UPDATE magcamare SET [codice] = '" & elencalc("articolo") & "', [descrizione] = '" & elencalc("descr_articolo") & "' WHERE codice = " + ????)

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.