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

    sql e record con caratteri speciali e spazi

    salve ho la necessità di estrarre dei record che hanno questo formato con un sql:

    mm-4
    l/dd 2
    fd-n

    ovviamente ho provato l'operatore LIKE ma credo di incasinarmi tra virgolette, %, &, ecc....io avrei scritto l'sql cosi:


    codice:
    SELECT classe,tipo FROM mag WHERE classe LIKE '" & "%" & session("clas") & "%" & "' ORDER BY tipo ASC"


    l'sql cosi scritta non funziona e mi dareste una mano a risolvere?

    grazie

    F

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    sql = "SELECT classe,tipo FROM mag WHERE classe LIKE '%" & session("clas") & "%' ORDER BY tipo ASC"
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  3. #3
    era una delle prove che avevo fatto, ma sigh...non funziona

  4. #4
    Amministratore L'avatar di Vincent.Zeno
    Registrato dal
    May 2003
    residenza
    Emilia-Romagna (tortellini und cappelletti land!)
    Messaggi
    20,783
    che vuol dire "non funziona"?
    la query proposta da andrea è corretta e coerente alla domanda

    hai provato a stampare il valore di sessione per verificarne il contenuto?

  5. #5
    Quote Originariamente inviata da Vincent.Zeno Visualizza il messaggio
    che vuol dire "non funziona"?
    la query proposta da andrea è corretta e coerente alla domanda

    hai provato a stampare il valore di sessione per verificarne il contenuto?
    certo!...ho messo un response.write del valore ed è quello giusto, cioè quello che seleziono dalla lista

  6. #6
    Amministratore L'avatar di Vincent.Zeno
    Registrato dal
    May 2003
    residenza
    Emilia-Romagna (tortellini und cappelletti land!)
    Messaggi
    20,783
    quindi...? che vuol dire "non funziona"?

  7. #7
    vuol dire che la eseguo cosi come mi ha indicato andrea e il risultato che torna non è corretto. Mi spiego meglio, se io dalla sql voglio solo i record dove classe è uguale a L-1 e mi da anche quelli L-2 e L-3, vuol dire che la sql non funziona...

  8. #8
    Amministratore L'avatar di Vincent.Zeno
    Registrato dal
    May 2003
    residenza
    Emilia-Romagna (tortellini und cappelletti land!)
    Messaggi
    20,783
    l'esempio L-1 L-2 L-3 non torna.

    e se vuoi quelli uguali non devi usare LIKE ma =

  9. #9
    adesso ti porto un esempio funzionante di una delle sql:

    codice:
    SELECT uno,due,tre,quattro,cinque,sei,sette,otto,nove,dieci,undici FROM tab WHERE uno " + session("var_uno") + " AND due='" & session("var_due") & "' AND tre='" & session("var_tre") & "' AND quattro='" & session("var_quattro") & "' AND cinque='" & session("var_cinque") & "' ORDER BY cfu_dettaglio ASC
    mentre se la restringo così come l'ho postata prima, non funziona più, cioè:

    codice:
    SELECT uno,due FROM tab WHERE uno " + session("var_uno") + " AND classe LIKE '" & "%" & session("clas") & "%" & "' ORDER BY tipo ASC"
    tieni presente che la variabile var_uno già del tipo < <= >= ecc. e quindi non c'è l'uguale nella sql...
    sto diventando scemo da un po vicino a questa cosa

  10. #10
    Amministratore L'avatar di Vincent.Zeno
    Registrato dal
    May 2003
    residenza
    Emilia-Romagna (tortellini und cappelletti land!)
    Messaggi
    20,783
    le due query non sono confrontabili: hanno operatori differenti
    nella prima chiedi valori uguali, nella seconda valori simili
    inoltre non sappiamo cosa ci sia in session("clas")

    stampati la query, così vedi cosa stai chiedendo

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.