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

    ordinamento recordset in base a variabile nella stringa sql

    E' possibile usare nella sintassi SQL, ORDER BY, non un campo del DB ma un variabile passata da una textbox?

  2. #2
    Utente di HTML.it L'avatar di Gioba66
    Registrato dal
    Jun 2002
    Messaggi
    2,189
    se la variabile passata corrisponde ad un campo del db sì; se no la domanda è priva di senso
    Tutti vogliono parlare, nessuno sa ascoltare.

  3. #3
    la variabile fa riferimento ad un campo del DB, ma il valore che assume dipende dalla textbox, ad esempio debbo ordinare una lista di nomi in modo che il nome scritto nella textbox del form sia il primo della lista nel recordset restituito da db.

    In pratica se il DB ha i campi NOME COGNOME, dal form l'utente digita il suo cognome, se è presente nel DB, mi viene stampato l'intero DB con l'ordinamento che inizia dal cognome trovato, spero di essere stato più chiaro.

  4. #4
    Utente di HTML.it L'avatar di Gioba66
    Registrato dal
    Jun 2002
    Messaggi
    2,189
    lo potresti fare facendo due query distinte ed accodando i risultati . oppure con un sort del recordset dopo la query. quale metodo è più efficiente dipende da quanti campi e quanti record tiri su.
    Tutti vogliono parlare, nessuno sa ascoltare.

  5. #5
    potresti darmi una traccia, il SORT non è il mio forte

  6. #6
    posto un po di codice per capirci meglio

    <%
    Dim varCognome
    varCognome=request.querystring("txtCognome")

    Dim cn
    Set cn = Server.CreateObject("ADODB.Connection")
    cn.Open "driver={Microsoft Access Driver (*.mdb)};dbq="&Server.MapPath("firme2.mdb")

    Dim sql
    sql= "SELECT * FROM firme2 ORDER BY --QUI STA IL DILEMMA-- "

    --avrei bisogno che il primo dato restituito fosse il cognome inserito nella variabile varCognome

    Set rs = Server.CreateObject("ADODB.Recordset")

    rs.Open SQL, cn, 3, 3

    do while not rs.eof

    %>
    <font size="1" face="Verdana, Arial, Helvetica, sans-serif">
    <%
    =rs.fields("nome")%><%=rs.fields("cognome")%><font color="#CC0033">•</font></font>

    <%
    rs.movenext
    loop
    rs.close
    cn.close
    Set rs = nothing
    Set cn = nothing
    %>

  7. #7
    non ho ben capito...

    hai un db con

    ALBINI
    BIANCHI
    ROSSI
    VERDI

    il cliente digita: ROSSI

    l'ouput deve essere

    ROSSI
    ALBINI
    BIANCHI
    VERDI

    ???

  8. #8
    esatto

  9. #9
    la order by non ti puo' aiutare. va usata una UNION (prima solo il record selezionato, poi tutti gli altri - tranne ovviamente quello gia' selezionato).

  10. #10
    Quindi una cosa tipo questa non ha senso

    sql= "SELECT * FROM firme2 ORDER BY request.querystring("txtCognome")"

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.