Pagina 2 di 2 primaprima 1 2
Visualizzazione dei risultati da 11 a 18 su 18

Discussione: Distinct su 2 tabelle

  1. #11


    <%
    'EFFETTUO LA RICERCA NEI CATALOGHI
    sql="SELECT DISTINCT MARCA from "& RsCatalogs("CATALOGO") &" "
    set rs=server.createobject("adodb.recordset")

    rs.open sql, ConnShop002, 1, 3
    %>
    <%

    Set Rs = ConnShop002.Execute(SQL)
    While Not rs.EOF%>


    <%=RS("MARCA")%>

    <%
    rs.MoveNext
    Wend
    %>

  2. #12
    UNA distinct su UNA tabella ti riporta i dati duplicati? difficile da credere, probabilmente c'è dell'altro. magari un carattere extra (invisibile) alla fine della parola.

  3. #13
    Su ogni tabella il DISTINCT funziona infatti se ho 5 alfa e 3 honda mi restituisce i nomi senza duplicati però essendo tre tabelle (per ora)
    ottengo 3 volte la parole ALFA e 3 volte HONDA essendo presenti in tutti i cataloghi
    Questo è il codice completo:
    <%'------------------------------------------------------------------------------------------------%>
    <%
    dim RsCatalogs, SQLCatalogs
    SQLCatalogs="select catalogo from cataloghi order by catalogo asc"
    set RsCatalogs=server.createobject("adodb.recordset")
    RsCatalogs.open SQLCatalogs, ConnShop002, 1, 3
    %>

    <%
    Set RsCatalogs = ConnShop002.Execute(SQLCatalogs)
    While Not RsCatalogs.EOF
    %>

    <%
    'EFFETTUO LA RICERCA NEI CATALOGHI
    sql="SELECT DISTINCT MARCA from "& RsCatalogs("CATALOGO") &" "
    set rs=server.createobject("adodb.recordset")

    rs.open sql, ConnShop002, 1, 3
    %>
    <%

    Set Rs = ConnShop002.Execute(SQL)
    While Not rs.EOF%>


    <%=RS("MARCA")%>

    <%
    rs.MoveNext
    Wend
    %>

    <%RsCatalogs.MoveNext
    Wend
    %>
    <%
    RsCatalogs.close
    set RsCatalogs=nothing
    %>

    <%'------------------------------------------------------------------------------------------------%>

    Se l'idea non è completamente errata magari devo solo spostare qualke stringa di codice.... ormai mi sono perso!

    :berto:

  4. #14
    ma allora abbiamo ricominciato... te l'abbiamo già data la soluzione. rileggiti tutto il 3d...

  5. #15
    La buona volntà per capire ce la sto mettendo tutta....
    ma "per la prima volta in due anni" mi trovo costretto a kiedere di postarmi la stringa corretta perkè proprio non mi ci raccapezzo più... e poi magari è na cavolata...
    :master:

  6. #16
    Da quello che ho potuto capire, a te serve un elenco DISTINTO delle marche associate ai diversi cataloghi....giusto???

    Secondo me una soluzione è ciclare sulla tabella CATALOGHI, componendo una query UNION sulla tabella il cui nome è in CATALOGHI. Mi spiego :

    <%'------------------------------------------------------------------------------------------------%>
    <%
    dim RsCatalogs, SQLCatalogs
    SQLCatalogs="select catalogo from cataloghi order by catalogo asc"
    set RsCatalogs=server.createobject("adodb.recordset")
    RsCatalogs.open SQLCatalogs, ConnShop002, 1, 3
    %>

    <%
    sql=""
    Set RsCatalogs = ConnShop002.Execute(SQLCatalogs)
    While Not RsCatalogs.EOF
    %>

    <%
    ' COMPONE LA STRINGA SQL
    if sql<>"" then sql=sql&" UNION "
    sql=sql+"SELECT DISTINCT MARCA from "& RsCatalogs("CATALOGO") &" "

    RsCatalogs.MoveNext
    Wend

    set rs=server.createobject("adodb.recordset")

    rs.open sql, ConnShop002, 1, 3
    %>
    <%

    Set Rs = ConnShop002.Execute(SQL)
    While Not rs.EOF
    ' ESEGUE LA UNION
    %>


    <%=RS("MARCA")%>

    <%
    rs.MoveNext
    Wend
    RsCatalogs.close
    set RsCatalogs=nothing
    %>

    <%'------------------------------------------------------------------------------------------------%>


    Così dovrebbe andare..

    ciao.

  7. #17
    sbagli l'approccio. tu fai DUE cicli nidificati, quindi fai UNA distinct alla volta.

    fai DUE cicli, e in quello esterno ti costruisci la stringa SQL (con la UNION), che poi userai nel secondo ciclo.

    per oggi - con te - mi sono guadagnato la pagnotta. la palla adesso è tua

  8. #18
    <%
    ' COMPONE LA STRINGA SQL
    if sql<>"" then sql=sql&" UNION "
    sql=sql+"SELECT DISTINCT MARCA from "& RsCatalogs("CATALOGO") &" "

    Così dovrebbe andare..

    ciao. [/QUOTE]

    :quote: funzionaaaaaaa!!!!!!!!

    :master: giuro ke non ci sarei mai potuto arrivare a questa soluzione....
    una costruzione cosi [if sql<>"" then sql=sql&" UNION "] non l'avevo mai vista nelle lezioni ke ho studiato.... e nemmeno negli script ke mi sono capitati sotto mano fino ad oggi!

    E di ricerche con la parola UNION e via dicendo ne ho fatte parekkie per un paio di settimane buone!]

    Ke dire... grazie un cifro gente! Al prossimo incubo!
    [P.S. non è ke avete un link dove spiega quello ke abbiamo fatto qui?]

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.