Visualizzazione dei risultati da 1 a 7 su 7

Discussione: [MySQl] FullText

  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2002
    Messaggi
    957

    [MySQl] FullText

    Ciao a tutti,
    ho problemi con il fulltext.

    Ho creato questa chiave:
    codice:
    FULLTEXT KEY `ricerca` (`file_nome`,`file_esame`,`file_descrizione`,`file_docente`)
    Io vorrei che la ricerca avvenisse su tutti e tre i campi e si ordinasse per attinenza:

    codice:
    SELECT *, MATCH(file_nome,file_esame,file_descrizione,file_docente) AGAINST('matematica') AS attinenza 
    FROM s_file
    WHERE MATCH(file_nome,file_esame,file_descrizione,file_docente) AGAINST('matematica') AND 1 AND 1 ORDER BY attinenza DESC
    Questa query non funziona, cos'ho sbagliato?
    Grazie

  2. #2
    Utente di HTML.it L'avatar di chris
    Registrato dal
    Sep 1999
    Messaggi
    1,568
    dopo la query fai un
    echo mysql_error() e vedi dove si trova l'errore
    "Nei prossimi tre anni col mio governo vogliamo vincere anche il cancro, che colpisce ogni anno 250.000 italiani e riguarda quasi due milioni di nostri concittadini"

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2002
    Messaggi
    957
    non trova errore, solo la query non mi da mai nessuna riga. Eppure il pattern c'è!
    La sintassi sarebbe giusta?

  4. #4
    Moderatore di Server Apache L'avatar di marketto
    Registrato dal
    Sep 2001
    Messaggi
    5,858
    potresti rientrare in questo caso:
    A natural language search interprets the search string as a phrase in natural human language (a phrase in free text). There are no special operators. The stopword list applies. In addition, words that are present in more than 50% of the rows are considered common and do not match. Full-text searches are natural language searches if no modifier is given.
    http://dev.mysql.com/doc/refman/5.0/...xt-search.html




    think simple think ringo

  5. #5
    Originariamente inviato da GoldEmish
    non trova errore, solo la query non mi da mai nessuna riga. Eppure il pattern c'è!
    La sintassi sarebbe giusta?
    La sintassi non e' errata anche se ci si puo' chiedere a che pro quei due AND 1 AND 1

    Ci sono varie limitazioni con fulltext. Una tra tante nel tuo caso: Se la parola "matematica" e' presente in piu' o uguale al 50% delle tuple ti ritorna zero righe. Devono esserci molte tuple e la parola comparire in meno del 50% dei casi. Ecco una delle ragioni perche' se devi cercare una sola parola e' meglio usare LIKE.

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

  6. #6
    visto che aveva gia' pure risposto Marketto... allora aggiungo che puoi bypassare questo limite usando BOOLEAN MODE.


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

  7. #7
    Utente di HTML.it
    Registrato dal
    Feb 2002
    Messaggi
    957
    Originariamente inviato da piero.mac
    La sintassi non e' errata anche se ci si puo' chiedere a che pro quei due AND 1 AND 1
    Si, allora può essere... perchè per ora il db è poco popolato.

    I due AND 1 AND 1 sono i residui del php che al posto del "1" mette delle altre condizioni...

    Grazie mille a tutti.

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.