Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 22
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2002
    Messaggi
    1,183

    selezionare solo nomi uguali

    ciao
    ho una tebella nome.

    Ci sono inseriti i seguenti nomi:

    ugo
    franco
    mimmo
    ugo
    ugo
    piero
    franco

    --------------

    Come faccio a fare stampare solo quei nomi che si ripetono piu' di una volta
    (i questo caso ugo e franco)?

    Grazie

    p.s.

    ho trovato questa mezza soluzione
    SELECT cognome FROM libro_soci GROUP BY cognome HAVING COUNT(cognome) >= 2

    che in effetti mi fa vedere solo i nomi che sono ripetuti
    ma vorrei che mi stampasse proprio i nomi ripetuti tante quante volte sono ripetuti

    vorrei che mi stampasse:
    ugo
    ugo
    ugo
    franco
    franco
    victor
    ----------------------

  2. #2
    SELECT cognome FROM libro_soci WHERE Cognome IN
    (SELECT cognome FROM libro_soci GROUP BY cognome HAVING COUNT(cognome) >= 2)

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2002
    Messaggi
    1,183
    SEI UN MITOOOOOOOOOOOOOO

    GRAZIE INFINITE E COMPLIMENTI
    victor
    ----------------------

  4. #4

  5. #5
    Utente di HTML.it
    Registrato dal
    Jun 2002
    Messaggi
    1,183
    approfitto ancora della tua bravura:


    ho un campo numerico tessera in cui ci sono inseriti dei numeri di tessera
    che vanno da uno ad infinito.
    Ogni tanto per errore è stato saltato qualche numero
    esempio:

    1
    2
    3
    5
    6
    7
    9
    ecc....

    come faccio a stampare i numeri che mancano (in questo caso 4-8)

    grazie infinite
    victor
    ----------------------

  6. #6
    se non vuoi fare un ciclo (da 1 a infinito; cerca; non c'è? stampa!), ti fai una tabella parallela con TUTTI i numeri (che realisticamente avranno una fine...) e la metti in JOIN con la tua

    SELECT numero FROM tabella_piena TS LEFT JOIN tua_tabella TD ON TS.numero=TD.numero WHERE TD.numero IS null

  7. #7
    Utente di HTML.it
    Registrato dal
    Jun 2002
    Messaggi
    1,183
    sai che non ho capito?
    devo fare un'altra tabella?
    non posso fare una sorta di ciclo sul campo che ho gia'?

    Grazie
    victor
    ----------------------

  8. #8
    il ciclo è un po' lento, però si può fare

  9. #9
    Utente di HTML.it
    Registrato dal
    Jun 2002
    Messaggi
    1,183
    mi faresti vedere come si fa?
    grazie
    victor
    ----------------------

  10. #10
    Volendo si può ottenere un risultato utile anche con una query sulla tabella.

    Il risultato è qualcosa tipo:
    codice:
    mancanti da    mancanti a
    4                   4
    7                   9
    In questo caso ti dice che, presi come validi i numeri da 1 al massimo id nella tua tabella, mancano gli id:
    da 4 a 4 (il 4)
    da 7 a 9 (il 7, 8, 9).

    Giusto per dare un'altra soluzione.

    La query è questa:
    codice:
    select
        max(s2.rown) +1 as mancanti_da
        , s1.rown -1 as mancanti_a
    from
        (
            select 
                r1.rown 
            from 
                tuatabella as r1
            left outer join
                tuatabella as r2
            on
                r1.rown = r2.rown -1
            where
                r2.rown is null
            order by
                1
        ) as s1
    inner join
        (
            select 
                r1.rown 
            from 
                tuatabella as r1
            left outer join
                tuatabella as r2
            on
                r1.rown = r2.rown -1
            where
                r2.rown is null
            order by
                1
        ) as s2
    on
        s1.rown > s2.rown
    group by
        s1.rown
    ;
    al posto di tuatabella ovviamente devi metterci la "tua tabella", e al posto di rown il tuo campo contatore.
    La query è un po' onerosa, quindi se hai molti record può essere un problema.

    Ciao,

    Ale.
    xxx

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.