Visualizzazione dei risultati da 1 a 4 su 4

Discussione: query mysql

  1. #1

    query mysql

    salve dovrei creare una query mysql che mi cerchi in una tabella parte di una stringa ossia del tipo

    select * from tabella where campo1 like 'canon xsl'

    io vorrei che la query mi selezionasse tutte le righe dove campo1 assume il valore 'canon'

    con like non mi funziona e neanche con %like%

    come posso fare?

  2. #2
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,923
    select * from tabella where campo1 like '%canon%'

  3. #3
    non va bene perch laddove te scrivi %canon% va un valore di una varibile che non contiene solo la parola canon ma anche un'altra sigla per cui io avrei query del tipo

    select * from tabella where campo1 like '%canon xp-45%'

    oppure

    select * from tabella where campo1 like '%canon xs-46%'

    io devo creare una query che mi controlli se nel campo1 c'è una delle parole presenti nella frase 'canon xp-45' oppure la frase 'canon xs-46'

  4. #4
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,923
    Usa una ricerca fulltext. La tabella deve essere di tipo myisam.

    alter table nome_tabella add fulltext(nome_campo);

    e poi esegui la query

    codice:
    select * from nome_tabella 
    where match (nome_campo) against('+canon xp-45' in boolean mode)
    in questo modo trovi sia la sigla esatta che le sole occorrenze di canon.

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 © 2024 vBulletin Solutions, Inc. All rights reserved.