Visualizzazione dei risultati da 1 a 9 su 9
  1. #1

    pulire un ciclo tipo distinct


    Mi serve "urge" un consiglio per una funzioncina

    faccio 1 select ad 1 tabella di questo tipo:
    codice:
    sql = "SELECT distinct * FROM aziende where comune ='" &session("nome_comune")& "' " & " Order by indirizzo Asc "
    e i risultati sono tipo

    via pippo 110
    via pippo 90
    via pippo 45

    via rossi 1
    via rossi 3
    via rossi 4

    e così via....
    ------------------------------------------

    io poi prendo i risultati e li inserisco in 1 select...pulendoli prima dal numero civico...

    del tipo:

    codice:
    perindirizzo = InStrrev(aziende("indirizzo")," ")
    nome_via_pulito = left(aziende("indirizzo"), perindirizzo-1)
    %>
    <option value="<%=(nome_via_pulito)%>"><%=ucfirst(nome_via_pulito)%></option>
    Ottenendo così quel che volevo...il nome della VIA pulito senza numero civico....
    --------------------------------------------

    Domanda:

    ovviamente nella select (anche se i nomi delle vie sono pulite) mi pesca la via PIPPO n volte quanti sono i numeri civici diversi...per cui ho una select del tipo

    via pippo
    via pippo
    via pippo

    via rossi
    via rossi
    via rossi

    io invece via pippo e via rossi vorrei pescarle 1 volta sola :berto:

    come se fa?
    Tanto...lo fanno tutti... posso farlo anche io vero?

  2. #2
    quella funzione di pulitura mettila direttamente nella prima sql

  3. #3
    Giusto....ma come ? intendo proprio a livello di codice come posso integrarla?
    Tanto...lo fanno tutti... posso farlo anche io vero?

  4. #4
    pigra, manco c'hai provato

    SELECT DISTINCT left(indirizzo, InStrrev(indirizzo," ")-1) AS BELLOPULITO FROM aziende

    facce sape'

  5. #5
    OPTIME io ho fatto così (sotto guida di Santino)
    codice:
    <%
    Set aziende = Server.CreateObject("ADODB.Recordset")
    sql = "SELECT distinct * FROM aziende where comune ='" &session("nome_comune")& "' " & " Order by indirizzo Asc "
    aziende.ActiveConnection = cn
    aziende.Open sql, cn
    
    dim attuale, precedente
    attuale=""
    precedente=""
    
    Do while not aziende.EOF
    
    if not aziende("indirizzo") = "" or not isnull(aziende("indirizzo")) then
    
    perindirizzo = InStrrev(aziende("indirizzo")," ")
    nome_via_pulito = left(aziende("indirizzo"), perindirizzo-1)
    
    attuale=lcase(nome_via_pulito)
    
    		if attuale <> precedente then
    		precedente=attuale
    %>
    <option value="<%=(attuale)%>"><%=ucfirst(attuale)%></option>
    <%
    end if
    end if
    %>
    <%
    aziende.movenext
    loop
    aziende.close()
    Set aziende = nothing
    %>
    Tanto...lo fanno tutti... posso farlo anche io vero?

  6. #6

  7. #7
    quindi non ho fatto sulla select come consigliato da te ma durante il ciclo
    Tanto...lo fanno tutti... posso farlo anche io vero?

  8. #8
    buono. se hai tempo prova anche la mia, dovrebbe essere più veloce

  9. #9
    certo grazie Optime
    Tanto...lo fanno tutti... posso farlo anche io vero?

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.