Visualizzazione dei risultati da 1 a 8 su 8
  1. #1

    Query che restituisce un campo numerico

    Ciao a tutti,
    sto cercando di creare un database piuttosto semplice composto da una singola tabella denominata "Dati Fondamentali" con circa 20 campi (colonne). A tale tabella ho collegato una query parametrica che solo per alcuni campi (solo 9 su 20) fa delle ricerce attraverso una maschera. Nella maschera ho quindi messo tante caselle combinate quanti sono i campi nella query (9 nel mio caso) e a seconda che seleziono la voce all'interno del menù a tendina, mi restituisce la query in formato foglio dati con solo i record con quel tipo di voce selezionata .
    Finchè faccio delle ricerce su campi di tipo testo non ho nessun problema e nei criteri della struttura della query inserisco per ogni campo:

    Like ("*" & [Forms]![MiaForms]![MioCampo] & "*").

    Sempre usando lo stesso codice, il problema subentra quando compio una ricerca su un campo numerico. Avendo una campo denominato "N° Progetto" e all'interno della tabella ci sono 53 record (righe), se inserisco come parametro di ricerca il numero "3" mi restituisce tutti i record con N° progetto contenente 3, ovvero:

    3 13 23 30 31 32 33 34 35 36 37 38 39 43 53 per un totale di 15 record, mentre a me interessa che restituisca solo quello con il numero 3 (o con il numero da me cercato).

    Che codice posso usare all'interno della mia query in Visualizzazione Struttura o Visualizzazione SQL? Le ho provate tutte ma non riesco a venirne fuori....e so già che sarà una sciocchezza!!

    Scusate per la lunghezza della domanda ma ho cercato di essere il più chiara possibile e spero che possiate aiutarmi!!

    Ciao Ciao

  2. #2
    non so se fa al caso tuo ma se vuoi avere solo il primo record del risultato del tuo query, metti 'limit 1' alla fine della tua query.

  3. #3
    Dato che nella query ci sono più condizioni nel WHERE, sostanzialmente una per ogni campo, la funzione LIMIT 1 dove la inserisco? proprio alla fine della mia query o alla fine dell'istruzione che esegue la ricerca sul campo numerico?
    E la sintassi corretta qual'è? perchè le ho provate tutte ma mi da sempre errore!!
    Ti ringrazio comunque dell'aiuto....

    Non so se sia di fondamentale importanza ma uso ACCESS come db!

  4. #4
    zucca, nei campi numerici NON si usa la like. ragionaci un attimo, e ti accorgerai che non ha proprio senso...

  5. #5
    In effetti hai ragione ma ho provato a cambiarlo anche in formato testo ma fa la stessa cosa...mi restituisce tutti i record con all'interno il numero da me selezionato e non il singolo record che serve a me. Dove sbaglio?
    Che sintassi o altri metodi posso utilizzare? possibile che non ci sia una soluzione?!?!?

  6. #6
    Originariamente inviato da Zuccantina
    In effetti hai ragione ma ho provato a cambiarlo anche in formato testo ma fa la stessa cosa...mi restituisce tutti i record con all'interno il numero da me selezionato e non il singolo record che serve a me. Dove sbaglio?
    Che sintassi o altri metodi posso utilizzare? possibile che non ci sia una soluzione?!?!?
    fantastico! gli dici che con il cacciavite non puoi smontare i dadi, e lui mica prende una chiave esagonale, mette una vite al posto del dado!!!!

    NON usare la LIKE con i numeri. cosa vorrà dire? scrivere = invece di LIKE.

    facce sape'

  7. #7
    Eh, come se non avessi già provato!!
    Il fatto è che pur mettendo come criterio:

    =[Forms]![MiaForms]![MioCampo]

    se nella richiesta del parametro non inserisco nulla, non mi restituisce nessun record perchè logicamente non ci sono record con N° progetto vuoto o zero che sia, mentre funziona se ricerco il numero del progetto. Io invece vorrei che me li restituisse tutti se non inserisco il valore nel parametro (cioè do INVIO su richiesta del parametro all'avvio della query).
    Tutto questo entra però in conflitto con le altre richieste che sono invece di tipo testo...per esempio, ho un campo che si chiama Comune e nel menù a tendina seleziono il comune su cui voglio fare la ricerca tra i record. All'avvio della query, se il criterio per il N° Progetto non è inserito funziona tutto regolarmente e mi restituisce quei record dove il comune è quello da me scelto. Se però inserisco il criterio nel campo N° Progetto,quindi come detto sopra:

    =[Forms]![MiaForms]![MioCampo]

    e cerco sempre lo stesso comune, non mi risulta più nessun record perchè in N° Progetto non ho messo nulla.
    Quindi risolvo il problema della numerazione ma se ne presenta un'altro.

    Non so se sono riuscita a farmi capire...

  8. #8
    fa' un test preventivo! se il campo è vuoto, non aggiungerlo alla WHERE

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.