Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 30
  1. #1
    Utente di HTML.it L'avatar di legal-x
    Registrato dal
    Nov 2000
    Messaggi
    628

    SQL: Where Campo contiente più caratteri

    salve a tutti,
    ho questo piccolo (forse) problema...

    ecco la mia tabella

    ID | Numero_tel | Cognomi

    1 | 123456 | Gino
    2 | 772838 | Mario
    3 | 123456 | Gino,Mario,ecc...

    La mia query è SELECT FROM TABELLA WHERE numero_tel = '123456'

    In questo modo però mi seleziona l'ID 1, e quindi il campo cognomi 'Gino'

    Io invece vorrei selezionare, a partirà di condizioni (WHERE NUMERO TEL='123456') la riga dove il campo cognomi contiene più caratteri ...e quindi in questo caso l'ID 3

    Mi sto perdendo in un bicchier d'acqua ?
    Webplease.it WebAgency
    www.webplease.it

  2. #2
    Utente di HTML.it L'avatar di wallrider
    Registrato dal
    Apr 2003
    Messaggi
    2,755
    quindi dove il campo contiene una , ?
    RIP Cicciobenzina 9/11/2010

    "Riseminaciceli, i ceci nell'orto"

  3. #3
    Utente di HTML.it L'avatar di legal-x
    Registrato dal
    Nov 2000
    Messaggi
    628
    magari

    esattamente il campo può contenere

    |1| ..oppure |1|2|3| ...quindi diciamo dove il carattere | è ripetuto più volte se vogliamo semplificare ?!?
    Webplease.it WebAgency
    www.webplease.it

  4. #4

  5. #5
    Utente di HTML.it L'avatar di legal-x
    Registrato dal
    Nov 2000
    Messaggi
    628
    optime, in che modo ?

    mi viene in mente LIKE %|% però il simbolo | c'è almeno una volta in tutti i campi !
    Webplease.it WebAgency
    www.webplease.it

  6. #6
    posta il contenuto reale dell'archivio (non tutto! solo qualcosa che ci faccia capire)

  7. #7
    a lume di naso devi utilizzare gli alias
    <head> Nothing! </head>
    <body> Open your mind and close your ass !!! </body>

  8. #8
    Utente di HTML.it L'avatar di legal-x
    Registrato dal
    Nov 2000
    Messaggi
    628
    ok, allora ...


    ID, Nome,Telefono,Articoli

    1,Pippo,12345,|1|
    2,Pluto,34567,|1|2|
    3,Pippo,12345,|1|2|3|
    4,Mario,78773,|1|2|

    Ho separato i valori da virgola, per non fare confusione.

    Io vorrei, con un unica query, selezionare il numero di telefono, dove il campo articoli contiene più valori ..

    LA query la faccio con Distinct(Telefono) così non mi prende i numeri di tel doppi, però proprio perchè fa la distinct non può prendere il record dove ci sono più "articoli" perchè dovrei dirglielo in qualche modo

    Il risultato che voglio è:

    2,Pluto,34567,|1|2|
    3,Pippo,12345,|1|2|3|
    4,Mario,78773,|1|2|
    Webplease.it WebAgency
    www.webplease.it

  9. #9
    Utente di HTML.it L'avatar di agenti
    Registrato dal
    Feb 2002
    Messaggi
    2,427
    se usi access , puoi usare la funzione interna "Len" che ti riporta il numero di caratteri contenuti nel campo articoli len(articoli), a quel punto potresti fare una "select * top 1 from tua_tab" che sarà ordinata in modo appropriato...


    spero di avere capito bene...

  10. #10
    Ciao,
    a mio parere è sbagliato proprio il modo in cui hai progettato il database.

    Io suddividerei la tua tabella in due tabelle:

    Tabella1: mettiamo sia la tabella denominata CLIENTI

    (ID, Nome, Telefono)


    Tabella2: mettiamo sia la tabella denominata ARTICOLI

    (ID_cliente, articolo)


    Dove ID_cliente si riferisce a ID della tabella CLIENTE (vincolo referenziale)



    Poi con una query nidificata ed una JOIN fra le due tabelle puoi conteggiarti gli articoli dei clienti con stesso numero di telefono, ma con diverso ID. E così puoi ottenere quello che tu cerchi.

    Altrimenti mi sa che ti complichi solo la vita.

    Se non sai come fare la query nidificata, magari te la posto io 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.