[Risolto] query con un campo di testo

Discussioni sulle caratteristiche di database
Rispondi
moore69
Messaggi: 26
Iscritto il: martedì 17 dicembre 2013, 14:23

[Risolto] query con un campo di testo

Messaggio da moore69 »

ciao a tutti!!
Credo di aver fatto un danno... avevo già scritto questo post, ma non lo trovo più nella lista :roll: Provo a rifarlo, nel caso scusatemi tantissimo se fosse una ripetizione......

Ho creato un database di pazienti che, tra le altre informazioni che contiene, mi indica la path assoluta per recupeare la cartella relativa dal mio HD (es. \\nomeserver\archivio\a\01\nome-paziente)

Ho bisogno di creare una query che mi cerchi tutti i pazienti contenuti nella sottocartella \a e me li conti.
Ho scritto la query riportata nell'immagine allegata
query.jpg
ma il risultato è che viene conteggiato il numero dei pazienti contenuti nelle cartelle \01, \02,\03 ecc......
Quello che speravo era invece che venissero conteggiati i pazienti in \a indipendentemente da quale sottocartella li contiene......

In linea teorica dovrei sostituire al secondo * del LIKE un qualche altro carattere che gli faccia ignorare il resto del testo..... é possibile?????
spero di essermi spiegato: solo questo serebbe già un successo :? !!!

Ciao e grazie
moore
Ultima modifica di charlie il lunedì 19 settembre 2016, 11:00, modificato 2 volte in totale.
Motivazione: Inserita spunta verde
windows xp - Apache openoffice 4
Avatar utente
charlie
Site Admin
Site Admin
Messaggi: 8945
Iscritto il: mercoledì 19 dicembre 2012, 10:50
Contatta:

Re: query con un campo di testo

Messaggio da charlie »

Ciao, bisogna fare delle prove, puoi condividere con noi un file con dati fittizi?
charlie
macOS 14.6.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
moore69
Messaggi: 26
Iscritto il: martedì 17 dicembre 2013, 14:23

Re: query con un campo di testo

Messaggio da moore69 »

eccolo scusa......

https://www.dropbox.com/s/o4u4eke7hqle4 ... a.odb?dl=0

grazie ancora
moore
windows xp - Apache openoffice 4
Avatar utente
charlie
Site Admin
Site Admin
Messaggi: 8945
Iscritto il: mercoledì 19 dicembre 2012, 10:50
Contatta:

Re: query con un campo di testo

Messaggio da charlie »

Per permettere la futura continuità, allego qui il file di @moore69.
Allegati
database prova.odb
(311.24 KiB) Scaricato 120 volte
charlie
macOS 14.6.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
Avatar utente
charlie
Site Admin
Site Admin
Messaggi: 8945
Iscritto il: mercoledì 19 dicembre 2012, 10:50
Contatta:

Re: query con un campo di testo

Messaggio da charlie »

Se ho ben compreso, il risultato da te atteso era 3, nell'esempio allegato.
Con l'uso di LIKE la query individua tutti i record che corrispondono alla ricerca e la funzione COUNT ti restituisce correttamente 1 per ogni record.
Credo che quello che vuoi fare non sia possibile.
charlie
macOS 14.6.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
moore69
Messaggi: 26
Iscritto il: martedì 17 dicembre 2013, 14:23

Re: query con un campo di testo

Messaggio da moore69 »

charlie ha scritto:Se ho ben compreso, il risultato da te atteso era 3, nell'esempio allegato.
esattamente.....
charlie ha scritto:Credo che quello che vuoi fare non sia possibile.
...ma perchè io voglio sempre fare cose impossibili?????????? :crazy: :crazy: :crazy:
Però stavo pensando a qualcosa tipo un'altra query (comando sql?) che mi estrae dal campo path il carattere della cartella principale (nell'esempio "\a\"....)
poi con un'altra query faccio il conteggio.... Possibile?? Bho adesso faccio un po' di prove.....

grazie lo stesso!
moore
windows xp - Apache openoffice 4
Gaetanopr
Volontario
Volontario
Messaggi: 3316
Iscritto il: mercoledì 21 novembre 2012, 20:07

Re: query con un campo di testo

Messaggio da Gaetanopr »

moore69 ha scritto: ...ma perchè io voglio sempre fare cose impossibili?????????? :crazy: :crazy: :crazy:
Non è impossibile, una soluzione potrebbe essere quella di aggiungere un nuovo campo dove indichi la cartella per ogni indirizzo.
Lancia la query2 e indica la cartella da conteggiare
Allegati
database prova.odb
(311.64 KiB) Scaricato 123 volte
LibreOffice 7.2.2.2 windows 10
Openoffice 4.1.13 su windows 10
moore69
Messaggi: 26
Iscritto il: martedì 17 dicembre 2013, 14:23

Re: query con un campo di testo

Messaggio da moore69 »

Il tuo sistema mi piace maaaaaa......
la colonna che hai aggiunto nella tabella, l'hai compilata manualmente? non esiste un sistema più o meno automatico?
Il database su cui lavoro in realtà esiste da tempo, e ormai i record sono oltre 3000.... :roll: :roll:

Ieri intanto avevo trovato la funzione SQL substr, che a una prima occhiata dovrebba considerare solo una parte di un testo....
Adesso devo solo capire come si può utilizzare.... appena ho un po' di tempo (non a breve :( ) mi propongo di studiarci......

Grazie ancora
moore

P.S. mi sapete indicare un sito in cui vengono spiegate tutte le funzioni SQL? mi sa che in quel modo si possano fare mille cose.......
windows xp - Apache openoffice 4
Gaetanopr
Volontario
Volontario
Messaggi: 3316
Iscritto il: mercoledì 21 novembre 2012, 20:07

Re: query con un campo di testo

Messaggio da Gaetanopr »

Possiamo fare tutto in automatico, tramite un istruzione di update.
LibreOffice 7.2.2.2 windows 10
Openoffice 4.1.13 su windows 10
Avatar utente
charlie
Site Admin
Site Admin
Messaggi: 8945
Iscritto il: mercoledì 19 dicembre 2012, 10:50
Contatta:

Re: query con un campo di testo

Messaggio da charlie »

Se le stringhe in Path hanno lunghezza fissa, potresti adoperate questa query senza aver bisogno di un campo in più nella tabella:

Codice: Seleziona tutto

SELECT COUNT( "Path" ), SUBSTR( "Path", 23, 1 ) "Cartella" FROM "TAC" WHERE SUBSTR( "Path", 23, 1 ) = ?
Per quanto riguarda SQL un aiuto lo puoi trovare qui:
http://www.1keydata.com/it/sql/
charlie
macOS 14.6.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
Gaetanopr
Volontario
Volontario
Messaggi: 3316
Iscritto il: mercoledì 21 novembre 2012, 20:07

Re: query con un campo di testo

Messaggio da Gaetanopr »

Altrimenti usare l'operatore Like in questo modo

Codice: Seleziona tutto

SELECT COUNT( "Path" ) FROM "TAC" WHERE "Path" LIKE '%\a\%'
oppure in quest altro

Codice: Seleziona tutto

SELECT COUNT( "Path" ) FROM "TAC" WHERE "Path" LIKE ?
e indicare la lettera così

Codice: Seleziona tutto

 '%\b\%'
LibreOffice 7.2.2.2 windows 10
Openoffice 4.1.13 su windows 10
moore69
Messaggi: 26
Iscritto il: martedì 17 dicembre 2013, 14:23

Re: [RISOLTO] query con un campo di testo

Messaggio da moore69 »

Urka quante belle idee.....
Fantastico, provo subito la migliore per le mie robe.....
Grazie millissime!!!!!!!

moore
windows xp - Apache openoffice 4
Rispondi