Visualizzazione dei risultati da 1 a 9 su 9

Hybrid View

  1. #1
    Utente di HTML.it L'avatar di vic53
    Registrato dal
    Oct 2010
    residenza
    Fonte Nuova (Roma)
    Messaggi
    592
    prova con

    SQL = "SELECT * FROM nome_tabella WHERE INSTR(campo1+campo2+campo3+campo4+campon,'5') > 0"
    i campi devono essere alfanumerici.... altrimenti hai perso


    ps per Andrea ...parliamo di ricerca testo naturalmente

    ciao
    Ultima modifica di vic53; 09-10-2014 a 20:13
    Vic53

  2. #2
    Utente di HTML.it L'avatar di vic53
    Registrato dal
    Oct 2010
    residenza
    Fonte Nuova (Roma)
    Messaggi
    592
    Quote Originariamente inviata da vic53 Visualizza il messaggio
    prova con



    i campi devono essere alfanumerici.... altrimenti hai perso


    ps per Andrea ...parliamo di ricerca testo naturalmente

    ciao
    un appunto per chi legge

    Naturalmente parlavamo di FULLTEXT su tutti i campi della tabella...
    l'uso di or sui campi del db è una cosa scontata da manuale...

    ciao
    Vic53

  3. #3
    Grazie per le risposte...che vedo solo ora in quanto qui da me a Genova ho purtroppo avuto altro a cui pensare in questo WE...

    Due domande due:
    - esiste on-line un manuale di access SERIO che davvero illustri come risolvere certe situazioni?

    - possibile che per fare quanto sopra devo scrivere il nome di TUTTI i campi interessati? non esiste un modo per far eseguire la query su tutti i campi senza doverli scrivere ad uno a uno? qualcosa tipo *?
    mi sembra perlomeno strano....


    e, importante: come faccio a fare in modo che poi vengano scritti SOLO i risultati in cui quanto richiesto appare? voglio dire: se il valore cercato appare SOLO nel campo N. 2, come faccio a fare un response.write che scriva appunto solo quel campo? devo fare una marea di IF o esiste qualche possiblità che mi sfugge?
    Ultima modifica di giorgius; 13-10-2014 a 09:18
    Giorgius

  4. #4
    Utente di HTML.it L'avatar di vic53
    Registrato dal
    Oct 2010
    residenza
    Fonte Nuova (Roma)
    Messaggi
    592
    Ti do una indicazione che esiste nei manuali antichi del basic... che puo rispondere alla tua domanda:
    se moltiplichi -1 per un valore -1 questo vale 1... che cosa serve dirai tu ... segui il mio ragionamento ora
    tu hai vari campi tipo campo1, campo2 campo3 campo4... campoN e vuoi scoprire se uno di questi campi vale per esempio "5" in formato testo allora possiamo fare in modo che la matematica ci risolva il tutto con le uguaglianze...

    campo1 diciamo che è il campo indicizzato 1, campo2 è indicizzato da 2 etc etc.

    ora facciamo questa operazione di uguaglianza usando una variabile che chiamiamo x
    x = (campo1="5")
    questa variabile vale -1 se l'uguaglianza è vera, altrimentio vale zero.

    ora facciamo in modo che il risultato della condizione faccia diventare x = al puntatore voluto cioe 1 per il campo 1

    cioè
    x = -1 * (campo1="5")

    vediamo cosa succede per il campo2

    x = -2 *(campo2="5")

    e per campo3
    x = -3 *(campo3="5)

    ora se la condizione e che solo uno dei campi vale "5" possiamo dedure con una sola istruzione il valore del pointer

    x = -1 * (campo1="5") + -2 *(campo2="5") + -3 *(campo3="5) ...

    x varrà 1 , 2 o 3 a seconda che uno di questi campi valga "5" ....

    Be vale la pena fermarsi un attimo per ragionare poi altre strade ma questa è sicuramente una strada percorribile

    naturalmente nel caso che i valori = "5" siano piu di uno vale la pena soffermarsi a come risolvere il quesito....

    se il pointer a 1 lo facciamo valere 1 e il pointer a 2 lo facciamo valere 20 e il poiter a 3 lo facciamo valelre 300 etc, la somma di tutti i campi se tutti i campi sono uguali a "5" varrebbe 321 come vedi la cifra gia ti indicherebbe che sono tutti e tre uguali a "5"

    mentre se il campo1 e il campo3 sono uguali a "5", x sarebbe uguale a 301 ...convieni con me che puo funzionare ?

    Be inutile dilungarci oltre ti auguro buon lavoro

    ciao
    Ultima modifica di vic53; 13-10-2014 a 22:49
    Vic53

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.