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

    [mysql] iniziali dei reord

    Ciao,
    volevo sapere se qualcuno conosce un sistema o una funzione per far si che una query mi selezioni solo tutti i record che nel campo 'nome' abbiano una parola che abbia per iniziale una lettera che io preinposto nel codice, in poche parole vorrei avere tutti i record che hanno un nome che inizi per una determinata lettera.
    Spero che qulcuno mi sappia consigliare....

  2. #2
    SELECT * FROM tabella WHERE campo LIKE 'm%'

    Questa ti prende tutte quelle che cominciano per m

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2002
    Messaggi
    1,056
    prova a guardare qui...http://sunsite.mff.cuni.cz/MIRRORS/f...L_indexes.html


    cmq dovrebbe funzionare con:

    ad esempio:
    $iniziale="B"
    $query=mysql_query("SELECT * FROM tabella WHERE nome LIKE '$iniziale%');

    penso...

  4. #4
    Utente di HTML.it L'avatar di fabi080
    Registrato dal
    Mar 2002
    Messaggi
    442
    SELECT campi FROM tabella WHERE nome LIKE 'a%'
    SELECT campi FROM tabella WHERE nome LIKE 'b%'

    etc...

  5. #5
    Grazie mille, funziona... :rollo:

  6. #6
    Sapete adesso se si può fare la stessa cosa, ma facendo si che si selezioni solo quelli che iniziano per un numero, non un numero che scelgo io, ma tutti i numeri??

  7. #7
    Utente di HTML.it
    Registrato dal
    Sep 2002
    Messaggi
    1,056
    ma funziona anche con la variabile come dicevo io (dubbio...) ???

    Per la seconda domanda io fare i diversi OR, ma non credo sia la soluzione migliore

  8. #8
    Come hai detto tu non ho provato, ho fatto come mi ha consigliato bubu77, avevo pensato a dei OR, ma già non saprei la corretta scrittura da eseguire, e cmq forse c'é di meglio....

  9. #9
    Utente di HTML.it L'avatar di fabi080
    Registrato dal
    Mar 2002
    Messaggi
    442
    Se vuoi mantenere una query corta puoi fare questa

    SELECT campi FROM tabella WHERE nome LIKE '0%' OR CAST(nome AS signed)>0

    la prima condizione trova quelli che iniziano con 0, l'altra converte le stringhe in numeri, tale conversione da un numero >0 solo se la stringa comincia con una cifra diversa da 0.

  10. #10
    codice:
    SELECT campi FROM tabella WHERE nome RLIKE '^[0-9]'
    
    Oppure: 
    
    ..... where nome REGEXP '^[0-9]'

    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.