Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 24
  1. #1

    mysql almeno uno dei caratteri

    Ragazzi devo fare un controllo su sql.
    $_POST[durata] può avere valori multipli tipo 1,2 oppure 5,6,7,8,9 oppure 15,16,17,18.
    Io devo dirgli guarda durata_a e controlla se contiene almeno uno dei numeri contenuti in $_POST[durata].

    ho provato così ma non funzia

    durata_a LIKE '$_POST[durata]'.
    Sapete darmi un suggerimento?

  2. #2
    da mysql.com
    vedi se ti è utile
    FIND_IN_SET(str,strlist)
    Returns a value 1 to N if the string str is in the string list strlist consisting of N substrings. A string list is a string composed of substrings separated by `,' characters. If the first argument is a constant string and the second is a column of type SET, the FIND_IN_SET() function is optimized to use bit arithmetic. Returns 0 if str is not in strlist or if strlist is the empty string. Returns NULL if either argument is NULL. This function will not work properly if the first argument contains a comma (`,') character. mysql> SELECT FIND_IN_SET('b','a,b,c,d');
    E' la mia opinione ed io la condivido
    Non condivido la tua idea ma darei la vita perché tu la possa esprimere (Voltaire)
    Scrivi sul muro

  3. #3
    mmmm
    non mi è utile ma mi ha fatto venire un'idea.
    Se c'è qualcuno che ha la soluzione pronta sono pronto ad ascoltarlo.
    Altrimenti adesso provo quello che mi è venuto in mente.

    ciao ciao

  4. #4
    ma che valori contiene il campo della tabella?
    E' la mia opinione ed io la condivido
    Non condivido la tua idea ma darei la vita perché tu la possa esprimere (Voltaire)
    Scrivi sul muro

  5. #5
    niente idea fallita :-((

    il campo contiene numeri inseriti con la virgola purtroppo.
    tipo 1,2,3,4,5 oppure 8,9,10,12

    Non c'è una funzione che mi guarda se un numero è contenuto in un campo. Una specie di confronta?

    Tipo ho un numero (7) in quanti campi è contenuto?

    campo like '%$numero%' ?

    e così dovrebbe andare ma se io ho un intervallo di numeri tipo da 7 a 14

    come faccio ad usare il like
    campo like >= '$numero' And campo like <= '$numero2'
    questo è sbagliato che io sappia non posso usare il like con degli operatori...o forse sbaglio?

  6. #6
    ok trovato uso una svalangata di like.
    Forse c'è un modo più prestante ma non mi viene in mente.

    uso un if e setto tutte le variabili in base ai numeri. isomma una miriade di like

  7. #7
    Utente di HTML.it L'avatar di Teuzzo
    Registrato dal
    Mar 2002
    Messaggi
    969
    Se ti serve trovare i record con i numeri esatti che ti servono:

    ... WHERE durata_a IN (5,6,7,8,9)

    Se invece uno dei numeri dev'essere dentro alla stringa devi usare i LIKE.

  8. #8
    piccolo problema
    se io faccio

    $numero9=1

    (durata LIKE '%$numero9%')

    lui mi da anche i record che hanno un 11

    come faccio a dirgli di trovare tutti i record che hanno il numero 1 all'interno che sono tra ,,?

    il campo come detto sopra è 1,3,5,7
    e lui me lo trova
    ma mi trova anche 11,25,34

    avete qualche idea per risolvere il problema?

  9. #9
    puoi usare le regexp nella select, trovi una pillola nel regolamento

  10. #10
    Originariamente inviato da massimo80
    piccolo problema
    se io faccio

    $numero9=1

    (durata LIKE '%$numero9%')

    lui mi da anche i record che hanno un 11

    come faccio a dirgli di trovare tutti i record che hanno il numero 1 all'interno che sono tra ,,?

    il campo come detto sopra è 1,3,5,7
    e lui me lo trova
    ma mi trova anche 11,25,34

    avete qualche idea per risolvere il problema?
    Includi la virgola.

    (durata LIKE '%$numero9,%')


    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

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.