Ricerca tramite inizio del cognome

di
Anonimizzato12704
il
12 risposte

Ricerca tramite inizio del cognome

Prima di tutto un saluto!
Scusate la banalità della domanda, che apparirà noiosa alla stragrande maggioranza dei fruitori del sito.
Io devo fare una ricerca tramite query di pazienti tramite cognome, nei criteri della query ho scritto :Like "*" & [forms]![mascheracercapazienti]![cognome] & "*"
Quando faccio la ricerca per esempio di "ros" mi da Rossi, Rossini ma anche Arrosi e Pirossi.
Come faccio a fargli cercare solo l'inizio? Cioè solo Rossi e Rossini.
Poi è possibile mettere tutto in una sola finestra? Cioè nella parte alta mettere i vari campi da immettere per la ricerca, Nome,Cognome, Città ecc. e nella parte bassa in una sottomaschera i risultati?
Mi rendo conto che non sono stato abbastanza chiaro. Scusate
Grazie mille a tutti

12 Risposte

  • Re: Ricerca tramite inizio del cognome

    Ciao,

    Ora non ricordo la sintassi precisa di access. comunque in SQL

    l'operatore LIKE ha due caratteri speciali il "_" e il "%" dove il primo rappresenta un solo carattere e il secondo N caratteri.

    nel tuo caso dunque la query (in SQL) sarebbe

    WHERE cognome LIKE ' Ros% ' Adattalo ad access, cambia molto poco.
  • Re: Ricerca tramite inizio del cognome

    Devo fare una correzione a quanto dici... che è vero ma non per Access(JET).

    Il JollyChar [%] è valido solo se si usa il DRIVER ADO o se si esegue una Q_PT su SQL_SERVER

    Se si usa Access(Client) e JET come DB Engine... si deve usare il Jolly specifico che è [*]

    Per il resto confermo la tua tesi.
  • Re: Ricerca tramite inizio del cognome

    Avete sicuramente ragione, ma io nei criteri della query ho messo : Like "*" & [forms]![mascheracercapazienti]![cognome] & "*" e mi da tutti i cognomi che contengoni le lettere che ho immesso nella finestra , mentre vorrei solo i cognomi che iniziano con quelle lettere.
    Grazie
  • Re: Ricerca tramite inizio del cognome

    @Alex ha scritto:


    Devo fare una correzione a quanto dici... che è vero ma non per Access(JET).

    Il JollyChar [%] è valido solo se si usa il DRIVER ADO o se si esegue una Q_PT su SQL_SERVER

    Se si usa Access(Client) e JET come DB Engine... si deve usare il Jolly specifico che è [*]
    Ho esplicitamente detto che parlavo di sql e andava riadattato ad access
  • Re: Ricerca tramite inizio del cognome

    antoniopisa ha scritto:


    Avete sicuramente ragione, ma io nei criteri della query ho messo : Like "*" & [forms]![mascheracercapazienti]![cognome] & "*" e mi da tutti i cognomi che contengoni le lettere che ho immesso nella finestra , mentre vorrei solo i cognomi che iniziano con quelle lettere.
    Grazie

    Noto che tu scrivi LIKE * eccetera *

    invece devi scrivere LIKE eccetera *

    Praticamente devi togliere il primo *

    Fammi sapere se funge
  • Re: Ricerca tramite inizio del cognome

    Bomberdini ha scritto:


    Ho esplicitamente detto che parlavo di sql e andava riadattato ad access
    Infatti hai sbagliato proprio per questo.
    SQL è un linguaggio non è SQLSERVER anche se assomiglia.... poi la dove di norma si usa jet mi pare inutile dare suggerimenti su SQLSERVER visto che è in una sezione dedicata a parte.
  • Re: Ricerca tramite inizio del cognome

    Ho detto la sintassi del LIKE in sql standard

    Basta riadattare
  • Re: Ricerca tramite inizio del cognome

    Bomberdini ha scritto:


    Ho detto la sintassi del LIKE in sql standard

    Basta riadattare
    Non so riadattare.
  • Re: Ricerca tramite inizio del cognome

    Bomberdini ha scritto:


    antoniopisa ha scritto:


    Avete sicuramente ragione, ma io nei criteri della query ho messo : Like "*" & [forms]![mascheracercapazienti]![cognome] & "*" e mi da tutti i cognomi che contengoni le lettere che ho immesso nella finestra , mentre vorrei solo i cognomi che iniziano con quelle lettere.
    Grazie

    Noto che tu scrivi LIKE * eccetera *

    invece devi scrivere LIKE eccetera *

    Praticamente devi togliere il primo *

    Fammi sapere se funge

    Se levo il "*" non mi da più la mascherina di insersione delle lettere
    Sono sicuro che si tratta proprio di qualcosa che riguarda la forma, asterischi o punti interrogativi o altro, perchè una volta lo vidi in un altro database e funzionava
  • Re: Ricerca tramite inizio del cognome

    Prova una delle seguenti sintassi:
    Like [forms]![mascheracercapazienti]![cognome] & "*"
    oppure
    [forms]![mascheracercapazienti]![cognome] & "*"
  • Re: Ricerca tramite inizio del cognome

    OsvaldoLaviosa ha scritto:


    Prova una delle seguenti sintassi:
    Like [forms]![mascheracercapazienti]![cognome] & *
    oppure
    [forms]![mascheracercapazienti]![cognome] & *
    oppure
    Like [forms]![mascheracercapazienti]![cognome]*
    oppure
    [forms]![mascheracercapazienti]![cognome]*
    Anche se, secondo me, non serve la & di congiunzione.
    Grazie mille
    Funziona il primo esempio!!!!
    Adesso devo fare una maschera in cui oltre il cognome mettere il nome e il telefono, per avere la possibilità di fare una ricerca per questi campi. E mi piacerebbe che i risultati mi apparissero in una sottomaschera della maschera di ricerca.
    Semmai apro un'altra discussione.
    Di nuovo grazie a tutti!!!!!
  • Re: Ricerca tramite inizio del cognome

    Non è chiaro esattamente cosa vuoi fare. È meglio se apri un nuovo thread descrivendo nei dettagli (nomi oggetti, nomi campi, loro relazioni ecc...) lo scenario completo.
Devi accedere o registrarti per scrivere nel forum
12 risposte