Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 18

Discussione: Distinct su 2 tabelle

  1. #1

    Distinct su 2 tabelle

    Salve gente.... un mio amico ha un grosso problema con una pagina ASP, c'è qualcuno ke cortesemente ci può aiutare? ecco il problema.

    Sto facendo la SELECT del campo "MARCA" SU PIù TABELLE....
    I nomi della tabelle li otengo tramite una precedente query
    Nel risultato ottengo effettivamente il DISTINCT del campo MARCA sia del primo ke del secondo catalogo
    PROBLEMA: ME LI MOSTRA SEPARATAMENTE.... invece dovrebbe mostrare il risultato DISTINCT unendo i risultati del primo e del secondo catalogo...

    [OTTENGO]
    (dal catalogo1)
    ALFA
    AUDI
    HONDA

    (dal catalogo2)
    ALFA
    HONDA
    ASAUBARU


    [INVECE DOVREI OTTENERE]
    (dal catalogo1 + catalogo2)
    ALFA
    AUDI
    HONDA
    SUBARU



    ================================================== ============
    IL CODICE INCRIMINATO è IL SEGUENTE


    codice:
    <SCRIPT LANGUAGE=javascript> 
    function invia() 
    { 
    document.form.submit(); 
    } 
    
    </SCRIPT> 
    <form name="form" method="post" action="combo2.asp"> 
    
    <p align="center"><select size="1" name="MARCA" onChange="invia()"> 
    <option><----scelga la marca----></option> 
    <% 
    'Definisco i cataloghi dove cercare 
    Dim strSearch 
    set rsCataloghi=ConnShop002.execute ("SELECT CATALOGO FROM cataloghi ORDER by catalogo desc") 
    while not rsCataloghi.eof 
    %> 
    
    <% 
    'EFFETTUO LA RICERCA NEI CATALOGHI 
    sql="SELECT DISTINCT MARCA from "& rsCataloghi("CATALOGO") &" " 
    set rs=server.createobject("adodb.recordset") 
    
    rs.open sql, ConnShop002, 1, 3 
    %> 
    <% 
    
    Set Rs = ConnShop002.Execute(SQL) 
    While Not rs.EOF%> 
    
    
    <option><%=RS("MARCA")%></option> 
    <% 
    rs.MoveNext 
    Wend 
    %> 
    <% 
    rsCataloghi.movenext 
    wend 
    %> 
    </select> 
    </form> 
    <div align="center"> 
    <% 
    rs.close 
    'ConnShop002.close 
    set rs=nothing 
    'set ConnShop002=nothing 
    %>


    Proprio non ne vengo + a capo!!!!
    Mi basta anche solo un input per sapere dove mettere le mani!

  2. #2
    trai ispirazione da questo esempio

    codice:
    SELECT DISTINCT NOME FROM
    (SELECT NOME FROM PRIMATABELLA
    UNION
    SELECT NOME FROM SECONDATABELLA)

  3. #3
    Prima usavo UNION... MA sapevo i nomi delle tabelle e quindi facevo come dici...
    IL PROBLEMA sta proprio nel fatto ke ora ho UNA VARIABILE COMUNE al posto dei nomi delle tabelle

    QUINDI non posso usare UNION (almeno credo)

    Codice PHP:
    sql="SELECT DISTINCT  MARCA from ( SELECT  MARCA "rsCataloghi("CATALOGO") &" union SELECT  MARCA "rsCataloghi("CATALOGO") &")" 

    Ancora non ci arrivo.... e magari è una cavolata!

    Altro aiutino?

  4. #4
    anche le subselect vogliono FROM...

  5. #5
    ho provato cosi

    sql="SELECT DISTINCT MARCA from ( SELECT MARCA from "& rsCataloghi("CATALOGO") &" union SELECT MARCA from "& rsCataloghi("CATALOGO") &")"

    e cosi

    sql="SELECT DISTINCT MARCA from ( SELECT DISTINCT MARCA from "& rsCataloghi("CATALOGO") &" union SELECT DISTINCT MARCA from "& rsCataloghi("CATALOGO") &")"

    ma nada... non ci arrivo ancora....


    mi da sempre lo stesso risultato

    non riesco a dire allo script:
    select DISTINCT [marca] from [tutte le tabelle]E [non duplicare tra Tabella e Tabella ecc..]

  6. #6
    up

  7. #7
    fatti stampare la SQL prima di eseguirla e postala

  8. #8
    Originariamente inviato da optime
    fatti stampare la SQL prima di eseguirla e postala
    oltre a quanto giustamente richiesto da optime aggiungi come informazione
    anche il tipo dei campi 'marca' delle 2 tabelle;

    ...forse potrebbero differire solo per il numero degli spazi finali;

    inoltre la SELECT DISTINCT iniziale dovrebbere essere superflua
    visto che,di regola, la UNION esegue già una DISTINCT implicita

  9. #9
    Ok è rincominciata la settmana di skleri

    Allora andiamo per ordine....
    Mi trovo a gestire + di 25.000 prodotti quindi ho deciso di Dividere il mio Catalogo Generale creando una Tabella per ogni Marca trattata e non sapendo ancora tutti i nomi delle marche ke aggiugerò in futuro... devo trovare una soluzione parekkio dinamica quindi.....


    Ho la tabella "CATALOGHI" con campo "ID" e campo "Catalogo" nella quale ho scritto i nomi delle tabelle dove ho tutti i miei prodotti....
    e cosi stampo la lista dei nomi dei cataloghi che ho nel mio database access

    <%
    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
    %>

    <% =RsCatalogs("catalogo") %>


    <%RsCatalogs.MoveNext
    Wend
    %>

    <div align="center">
    <%
    RsCatalogs.close
    set RsCatalogs=nothing
    %>

    e il risultato è il seguente:

    BMC
    Lampa
    Prodotti
    REMUS
    WestCoastCustomsx


    ora per ogni "nome tabella" ottenuto, dovrei kiedere di leggere nel campo "MARCA" (di tipo testo) quali nomi sono presenti e di mostrarmi un elenco unico "ricavato da tutte le tabelle" ma senza duplicati...

    MA INVECE DI OTTENERE Come risultato finale:

    Alfa
    Audi
    Citroen
    Daewoo
    Ferrari
    Fiat
    Honda
    Porsche

    OTTENGO sempre qualkosa del genere (esempio fatto su tre sole tabelle)

    Alfa
    Audi
    Dewoo
    Fiat

    Alfa
    Audi
    Dewoo
    Honda

    Alfa
    audi
    Daewoo
    Ferrari
    Honda
    Porsche

    KE DEVO FA?

    Se nn mi sono spiegato bene non esistate a farmelo presente! :berto:

  10. #10
    qualKosa? Ke devo fa'? ma te fanno male e mani?

    e comunque, non vedo la SQL per l'estrazione delle marche...

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.