Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1

    eliminazione record doppi

    Ciao a tutti,
    ho una query semplicissima che mi esporta i record da una tabella in un range di date che gli passo creando una tabella con più righe.
    Vorrei però che se trovasse all'interno della tabella lo stesso valore in una colonna specifica lui "skippasse" l'inserimento della riga.
    ad esmpio lo stesso numero di ordine (colonna SX) su più righe della tabella.

    Per vedere se esiste faccio una query usando il count.
    Il problema però che non dovrebbe farmi vedere nessun record se il count > 1, invece mi fa vedere 1 riga se trova il count>1 (ad esempio il count è di 5, quindi cinque record con il dato nella colonna presente)


    posto il ocdice
    codice:
    <%
    data=request.querystring("data")
    data1=request.querystring("data1")
    dim rs,connection,id
    set rs=session("rs")
    set connection=session("connection")
    dim rs1
    Set rs1 = Server.CreateObject("ADODB.Recordset")
    query="SELECT ordini.titolo,ordini.versione,ddt.data_documento,ddt.numero_documento,ordini.numero_ordine,ordini.clientefatt,ordini.cliente,ordini.clientecons,ddt.anno_documento FROM ddt INNER JOIN Ordini ON (ddt.numero_ordine = ordini.numero_ordine)  WHERE (((ddt.data_documento)>='"&data&"' AND (ddt.data_documento)<='"&data1&"')) AND ddt.annullato<>'SI' AND ddt.sun='NO' AND ordini.sun is NULL ORDER BY ddt.data_documento, ddt.numero_documento;"
    'response.write "
    "&query&"
    
    "
    rs.open query,connection,1
    if rs.eof then
    rs.close
    %>
    <script>
    nodata()
    </script> 
    <%
    else
    %> 
    <span class="h6"><font color="00FF00">RICERCA PER DATA - ELENCO RISULTATI</font></span> 
    <form name="form" method="post" action="dosunddt.asp">
    <table width="100%" border="0" bordercolor="#00FFFF">
      <tr bgcolor="#000099"> 
        <td class="h6"><div align="center"><font color="#FFFFFF" size="1">TITOLO</font></div></td>
        <td class="h6"><div align="center"><font color="#FFFFFF" size="1">VERSIONE</font></div></td>
        <td class="h6"><div align="center"><font color="#FFFFFF" size="1">DATA DOCUMENTO</font></div></td>
        <td class="h6"><div align="center"><font color="#FFFFFF" size="1">DDT</font></div></td>
        <td class="h6"><div align="center"><font color="#FFFFFF" size="1">SX</font></div></td>
    	<td class="h6"><div align="center"><font color="#FFFFFF" size="1">CLIENTE FATTURANTE</font></div></td>
        <td class="h6"><div align="center"><font color="#FFFFFF" size="1">CLIENTE ORDINANTE</font></div></td>
        <td class="h6"><div align="center"><font color="#FFFFFF" size="1">CLIENTE COSEGNA</font></div></td>
        <td class="h6"><div align="center"><font color="#FFFFFF" size="1">INVIA</font></div></td>
      </tr>	
    	<%
    	while not rs.eof
    	sx=rs("numero_ordine")
    	querysx="select count(*) from ddt where numero_ordine='"&sx&"';"
    	rs1.open querysx,connection,1
    	conta=rs1(0)
    	rs1.close
    	if conta>1 then
    	rs.movenext
    	end if
    	%>
      <tr> 
        <td><font size="2"><%=rs("Titolo")%></font><input type="hidden" name="titolo" value="<%=rs("Titolo")%>"></td>
        <td><font size="2"><%=rs("Versione")%></font><input type="hidden" name="versione" value="<%=rs("versione")%>"></td>
        <td><div align="center"><font size="2"><%=rs("Data_documento")%></font></div><input type="hidden" name="datadoc" value="<%=rs("Data_documento")%>"></td>
        <td><font size="2"><%=rs("numero_documento")%></font><input type="hidden" name="ddt" value="<%=rs("numero_documento")%>"></td>
        <td><font size="2"><%=rs("numero_ordine")%></font><input type="hidden" name="sx" value="<%=rs("numero_ordine")%>"></td>
        <td><font size="2"><%=rs("clientefatt")%></font><input type="hidden" name="clientefatt" value="<%=rs("clientefatt")%>"></td>
        <td><font size="2"><%=rs("cliente")%></font><input type="hidden" name="cliente" value="<%=rs("cliente")%>"></td>
        <td><font size="2"><%=rs("clientecons")%></font><input type="hidden" name="clientecons" value="<%=rs("clientecons")%>"></td>
    	<td><font size="2">
    	  <input type="checkbox" name="invio" value="<%=rs("numero_documento")%>">
    	</font></td>
        <%
    	rs.movenext
    %>
      </tr>
      <%
    	wend
    %>
    </table>
    grazie mille per l'aiuto...
    "..non vogliamo avere ragione... vogliamo essere felici.."

  2. #2
    nessun consiglio????
    "..non vogliamo avere ragione... vogliamo essere felici.."

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    152
    Prova così ...


    Codice PHP:
    <%
    data=request.querystring("data")
    data1=request.querystring("data1")
    ' DEVI FARE IL TYPECASTING DELLE VARIABILI !

    dim rs,connection,id
    set rs=session("rs")
    set connection=session("connection")

    PROVA QUESTA QUERY CON IL GROUP BY ....
    query="SELECT ordini.titolo,ordini.versione,ddt.data_documento,ddt.numero_documento,ordini.numero_ordine,ordini.clientefatt,ordini.cliente,ordini.clientecons,ddt.anno_documento FROM ddt INNER JOIN Ordini ON (ddt.numero_ordine = ordini.numero_ordine)  WHERE (((ddt.data_documento)>='"&data&"' AND (ddt.data_documento)<='"&data1&"')) AND ddt.annullato<>'SI' AND ddt.sun='NO' AND ordini.sun is NULL GROUP BY numero_ordine ORDER BY ddt.data_documento, ddt.numero_documento;"
    'response.write "
    "&query&"

    "
    rs.open query,connection,1
    if rs.eof then%>
        <script>
        nodata()
        </script> 
    <%else%> 
        <span class="h6"><font color="00FF00">RICERCA PER DATA - ELENCO RISULTATI</font></span> 
        <form name="form" method="post" action="dosunddt.asp">
        <table width="100%" border="0" bordercolor="#00FFFF">
          <tr bgcolor="#000099"> 
            <td class="h6"><div align="center"><font color="#FFFFFF" size="1">TITOLO</font></div></td>
            <td class="h6"><div align="center"><font color="#FFFFFF" size="1">VERSIONE</font></div></td>
            <td class="h6"><div align="center"><font color="#FFFFFF" size="1">DATA DOCUMENTO</font></div></td>
            <td class="h6"><div align="center"><font color="#FFFFFF" size="1">DDT</font></div></td>
            <td class="h6"><div align="center"><font color="#FFFFFF" size="1">SX</font></div></td>
            <td class="h6"><div align="center"><font color="#FFFFFF" size="1">CLIENTE FATTURANTE</font></div></td>
            <td class="h6"><div align="center"><font color="#FFFFFF" size="1">CLIENTE ORDINANTE</font></div></td>
            <td class="h6"><div align="center"><font color="#FFFFFF" size="1">CLIENTE COSEGNA</font></div></td>
            <td class="h6"><div align="center"><font color="#FFFFFF" size="1">INVIA</font></div></td>
          </tr>    
          <tr> 
            <td><font size="2"><%=rs("Titolo")%></font><input type="hidden" name="titolo" value="<%=rs("Titolo")%>"></td>
            <td><font size="2"><%=rs("Versione")%></font><input type="hidden" name="versione" value="<%=rs("versione")%>"></td>
            <td><div align="center"><font size="2"><%=rs("Data_documento")%></font></div><input type="hidden" name="datadoc" value="<%=rs("Data_documento")%>"></td>
            <td><font size="2"><%=rs("numero_documento")%></font><input type="hidden" name="ddt" value="<%=rs("numero_documento")%>"></td>
            <td><font size="2"><%=rs("numero_ordine")%></font><input type="hidden" name="sx" value="<%=rs("numero_ordine")%>"></td>
            <td><font size="2"><%=rs("clientefatt")%></font><input type="hidden" name="clientefatt" value="<%=rs("clientefatt")%>"></td>
            <td><font size="2"><%=rs("cliente")%></font><input type="hidden" name="cliente" value="<%=rs("cliente")%>"></td>
            <td><font size="2"><%=rs("clientecons")%></font><input type="hidden" name="clientecons" value="<%=rs("clientecons")%>"></td>
            <td><font size="2">
              <input type="checkbox" name="invio" value="<%=rs("numero_documento")%>">
            </font></td>
            <%rs.movenext%>
          </tr>
    <%End If 
    rs.close
    Set Rs = Nothing
    Ricorda di chiudere RS e Connesioni !%>
    </
    table

  4. #4
    ..con il group by me li, appunto, raggruppa...
    a me serve che me li elimini.. cioè ma faccia il rs.movenext se ne trova più di 1...
    "..non vogliamo avere ragione... vogliamo essere felici.."

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    152
    query=
    "SELECT COUNT(ordini.numero_ordine) AS CONTA ordini.titolo,ordini.versione,ddt.data_documento,d dt.numero_documento,ordini.numero_ordine,ordini.cl ientefatt,ordini.cliente,ordini.clientecons,ddt.an no_documento FROM ddt INNER JOIN Ordini ON (ddt.numero_ordine = ordini.numero_ordine) WHERE (((ddt.data_documento)>='"&data&"' AND (ddt.data_documento)<='"&data1&"')) AND ddt.annullato<>'SI' AND ddt.sun='NO' AND ordini.sun is NULL GROUP BY numero_ordine HAVING CONTA = 1 ORDER BY ddt.data_documento, ddt.numero_documento;"
    Ciao e grazie per la comprensione!

  6. #6
    così non gli piace...

    ODBC driver does not support the requested properties
    "..non vogliamo avere ragione... vogliamo essere felici.."

  7. #7
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    152
    Che database utilizzi ?

    Se usi access prova ad inserire la query (che ti stampi con un response write) direttamente sull'editor del db e guarda dove ti da errore.

    In teoria dovrebbe funzionare ...
    Ciao e grazie per la comprensione!

  8. #8
    direttamente su SQL2005 da una pagina asp.

    ma.. il count() as.. dopo non credo accetti tutti i campi definiti nella query prima del FROM..
    o sbaglio??

    codice:
    QUERY="SELECT COUNT(ordini.numero_ordine) AS CONTA ordini.titolo,ordini.versione,ddt.data_documento,ddt.numero_documento,ordini.numero_ordine,ordini.clientefatt,ordini.cliente,ordini.clientecons,ddt.anno_documento FROM ddt INNER JOIN Ordini ON
    "..non vogliamo avere ragione... vogliamo essere felici.."

  9. #9
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    152
    ferma tutto ... ho visto ... manca una virgola dopo il campo CONTA ....

    QUERY="SELECT COUNT(ordini.numero_ordine) AS CONTA , ordini.titolo,ordini.versione,ddt .................... etc


    sorry non avevo visto ... prova ora

  10. #10
    nada... sempre

    Microsoft OLE DB Provider for ODBC Drivers error '80040e21'

    ODBC driver does not support the requested properties.
    "..non vogliamo avere ragione... vogliamo essere felici.."

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 © 2026 vBulletin Solutions, Inc. All rights reserved.