5 messaggi dal 03 novembre 2008
ciao a tutti ho un problemino con un sito che sto realizzando, avrei la necessità di riportare solo gli ultimi 7 record dal mio db (e ci riesco fino a qui...) però dovrei visualizzare quest'ultimi dal settimo al primo.

la porzione di codice interessata e la seguente:

strXML = strXML + "<categories>
<%
set conn=Server.CreateObject("ADODB.Connection")
conn.Provider="Microsoft.Jet.OLEDB.4.0"
conn.Open Server.MapPath("../db/poker.mdb")

set rs = Server.CreateObject("ADODB.recordset")
rs.Open "SELECT top 7 DAYS as DaysAsc FROM Stats order by ID desc", conn

do until rs.EOF
for each x in rs.Fields
response.write "<category name='"&x.value&"' />"
next
rs.MoveNext
loop

rs.close
conn.close
%></categories>";


il risultato non è altro che i giorni della settimana in basso al grafico come potete vedere su http://www.jokerstars.somee.com/prove/tabella.asp

io vorrei mostrare i giorni della settimana in ordine inverso, ovvero l'ultimo giorno della settimana dovrebbe comparire sotto l'ultima barra del grafico.

sapete darmi una mano? sarebbe perfetto poter modificare solo la stringa sql, ma non ho proprio idea di come fare...

vi ringrazio in anticipo!
attendo risposte qui incollato al monitor :P
Modificato da CiGnOoOo il 11 dicembre 2008 08.26 -
308 messaggi dal 13 luglio 2005
Ciao CiGnOoOo,
la variabile "DAYS" cos'è? un numero, il nome del giorno della settimana, oppure?

Se fosse un numero potresti fare così:

rs.Open "SELECT TT.* FROM (SELECT top 7 DAYS as DaysAsc FROM Stats order by ID desc) AS TT ORDER BY TT.DAYS DESC", conn

viceversa se non fosse un numero ...

Fammi sapere, ciao.

Umb
5 messaggi dal 03 novembre 2008
days è il giorno della settimana, campo stringa con record come lunedi, martedi, mercoledi... capito? il mio capo mi ha detto di fare un'array e dargli il valore -1 ma non so come fare. puoi aiutarmi? sono bloccato li :(
5 messaggi dal 03 novembre 2008
ho risolto così:

rs.Open "SELECT DAYS FROM (SELECT top 7 DAYS,ID FROM Stats order by ID desc) ORDER BY ID ASC", conn

spero serva a qualcuno :)
107 messaggi dal 26 marzo 2001
non è corretto in quanto l'iD non hai garanzia che sia in ordine crescente ti consiglio di crearti una colonna fittizia per l'ordinamento e utilizzare la subquery per fare un order by

___________________
Emilio Reale
MCP ID: 3355694 MCSD MCDBA MCSE
308 messaggi dal 13 luglio 2005
Ciao CiGnOoOo,
sono pienamente d'accordo con ereale (come potrei non esserlo  ), ma già basterebbe che, invece di inserire nel campo "DAYS" il nome del giorno della settimana (cioè una variabile varchar), tu inserissi una data (ovvero una variabile datetime). Questo ti permetterebbe di ordinare al meglio i tuoi dati e di ricavare comunque il nome del giorno della settimana usando, per esempio, la funzione SQL (ma ce n'è una molto simile anche in vbscript) DATENAME(w, CampoData).

A presto.

Umb
5 messaggi dal 03 novembre 2008
ciao ragazzi, vi ringrazio per i vostri consigli, che anche se non ho ben capito visto che mi sono appena affacciato sul mondo ASP, cercherò di implementare sul mio sitarello :)

cmq volevo farvi una domanda... non ho ben capito come mai non ho garanzie di avere un ID crescente... mi spiego:

con (SELECT top 7 DAYS,ID FROM Stats order by ID desc) avrò gli ultimi 7 ID decrescenti es. 30,29...24.

con "SELECT DAYS FROM (SELECT top 7 DAYS,ID FROM Stats order by ID desc) ORDER BY ID ASC" li dovrei riordinare in maniera crescente 24,25...30.

Di sicuro sono io che non ho capito qualcosa, però se me lo spiegaste ne sarei molto molto felice, il mio sogno è dominare sto c***o di ASP e pure se ci sto solo combattendo per ora so che arriverà il giorno in cui ci riuscirò a fare tutto :P

grazie mille a tutti... per il sito e per la disponibilità :)

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.