Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 27
  1. #1

    ASP: riconoscere campo in MySQL in base a interrogazione

    Salve.
    Ho una query che interroga due campi, "ragionesociale" e "referenti", di una stessa tabella di un db cercando uno o più termini in entrambi. Voglio estrarre il dato solo se il termine ricercato (o tutti i termini ricercati se più di uno) é presente almeno in uno dei due campi. Tutto ok per l'impostazione, anche dinamica, della query.

    Ho però necessità di sapere se il termine è stato trovato nel primo o nel secondo campo.
    I due campi sono, come ho già indicato, "ragionesociale" e "referenti".

    Come faccio a sapere se il record è stato estratto perché il termine di ricerca è stato trovato nel campo "ragionesociale" o nel campo "referenti" ?
    E come faccio a sapere se in termine é stato trovato contemporaneamente in entrambi i campi?

    Grazie in anticipo.
    Ultima modifica di marco.agelao; 28-06-2015 a 14:57

  2. #2

  3. #3
    Amministratore L'avatar di Vincent.Zeno
    Registrato dal
    May 2003
    residenza
    Emilia-Romagna (tortellini und cappelletti land!)
    Messaggi
    20,807
    Quote Originariamente inviata da marco.agelao Visualizza il messaggio
    (nel titolo ho scritto tabella invece di campo)
    credo tu faccia ancora in tempo a correggerlo, in modalità avanzata

  4. #4
    Ok, grazie Vinent ho modificato titolo.
    Salve a entrambi.
    La query che ho impostato è questa:
    codice:
        parteSQL_rs=replace(testocercato," ","%' and ragionesociale like '%")
        parteSQL_rf=replace(testocercato," ","%' and referenti like '%")
        sql_archivi="select * from dcf where (ragionesociale like '%" & parteSQL_rs & "%') or (referenti like '%" & parteSQL_rf & "%') order by ragionesociale asc"
    Come potete notare ricerco uno o più termini all'interno dei campi "ragionesociale" e "referenti"

    L'interrogazione funziona però non so come capire se i termini cercati sono stati trovati nell'uno o nell'altro campo e mi serve saperlo per comportarmi di conseguenza

  5. #5

    SELECT * FROM
    (
    select '1' as dove, * from dcf where (ragionesociale like '%" & parteSQL_rs & "%')
    UNION
    select '2' as dove, * from dcf where (referenti like '%" & parteSQL_rf & "%')
    UNION
    select '3' as dove, * from dcf where (ragionesociale like '%" & parteSQL_rs & "%') AND (referenti like '%" & parteSQL_rf & "%')
    )
    T1 order by ragionesociale asc

  6. #6
    ok quindi poi la variabile dove mi contiene cosa? il nome del campo?

  7. #7
    mi pareva fosse semplice 1, 2 o 3 in base a dove ha trovato -- ma la query te la puoi modificare come ti pare, ho solo indicato un trucco

  8. #8
    ho provato ma non mi da alcun risultato
    Anzi in realtà si blocca sulla query e poi mi da tempo scaduto per lo script

    La query è diventata

    codice:
    "SELECT * FROM (select '1' as dove, * from dcf where (ragionesociale like '%" & parteSQL_rs & "%') UNION select '2' as dove, * from dcf where (referenti like '%" & parteSQL_rf & "%') UNION select '3' as dove, * from dcf where (ragionesociale like '%" & parteSQL_rs & "%') AND (referenti like '%" & parteSQL_rf & "%')) T1 order by ragionesociale asc"
    E T1 cos'è?
    Ultima modifica di marco.agelao; 28-06-2015 a 15:21

  9. #9
    Utente di HTML.it L'avatar di MySQL
    Registrato dal
    May 2015
    Messaggi
    729
    Quote Originariamente inviata da marco.agelao Visualizza il messaggio
    ho provato ma non mi da alcun risultato
    Anzi in realtà si blocca sulla query e poi mi da tempo scaduto per lo script

    La query è diventata

    codice:
    "SELECT * FROM (select '1' as dove, * from dcf where (ragionesociale like '%" & parteSQL_rs & "%') UNION select '2' as dove, * from dcf where (referenti like '%" & parteSQL_rf & "%') UNION select '3' as dove, * from dcf where (ragionesociale like '%" & parteSQL_rs & "%') AND (referenti like '%" & parteSQL_rf & "%')) T1 order by ragionesociale asc"
    la sintassi è sbagliata, per mysql è
    codice:
    select 1 as dove, dcf.* from dcf ...

  10. #10
    fatti stampare la query e postala

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.