Visualizzazione dei risultati da 1 a 10 su 10

Discussione: RecordCount= 8

  1. #1
    Utente di HTML.it L'avatar di muyuy
    Registrato dal
    Nov 2001
    Messaggi
    61

    RecordCount= 8

    Ciao,

    nel mio db ho vari valori all'interno di uno stesso recordset

    facendo cosi:

    sql="select Domanda1, COUNT(*) AS totale FROM TbDomande GROUP BY DOMANDA1"



    Set ObjRs =Server.CreateObject("ADODB.Recordset")
    objRS.Open SQL, objConn, 1, 1, adCmdText

    Do Until objRs.EOF

    strd=objrs("Domanda1")

    inum = objRs.RecordCount

    Select case strd
    case "1"
    response.write "insufficiente:"& "........" &objRs("totale")& "
    "
    case "2"
    response.write "sufficiente:"& "........" &objRs("totale")& "
    "
    case "3"
    response.write "discreto:"& "........" &objRs("totale")& "
    "
    case "4"
    response.write "buono:"& "........" &objRs("totale")& "
    "
    case "Assente"
    response.write "Assente:"& "........" &objRs("totale")& "
    "
    case "5"
    response.write "ottimo:"& "........" &objRs("totale")& "
    "
    case "NA"
    response.write "NA:"& "........" &objRs("totale")& "
    "
    case null
    response.write "Nnull:A:"& "........" &objRs("totale")& "
    "

    end select
    ObjRs.MoveNext
    Loop
    response.write inum


    il problema è che mi viene sempre 8 che sono i campi all'interno del mio db.
    Io vorrei invece che mi venissero contati i valori all'interno della colonna..
    come devo fare? :master:

  2. #2
    Utente di HTML.it L'avatar di marco_c
    Registrato dal
    Jun 2004
    Messaggi
    1,047
    è giusto usare RecordCount per contare i record, cioè "i valori della colonna" come dici.

    il problema secondo me sta nella query
    mettendo GROUP BY secondo me ti raggruppa i record i 8 aree e quindi ti vengono fuori 8 record

    controlla bene cosa ti dà la query magari facendo visualizzare tutti i record risultanti in una tabella
    Gli uomini si dividono in due categorie: i geni e quelli che dicono di esserlo. Io sono un genio.

  3. #3
    Utente di HTML.it L'avatar di muyuy
    Registrato dal
    Nov 2001
    Messaggi
    61
    Non mi è mica chiaro..

    Group by mi dovrebbe raggruppare i dati del campo domanda1 e con il loop dovrei splitarmeli.
    Perche' nel recordcont influisce il group by?

  4. #4
    Utente di HTML.it L'avatar di marco_c
    Registrato dal
    Jun 2004
    Messaggi
    1,047
    perchè li conti..!

    se hai una tabella tipo

    ID NOME
    1 marco
    2 marco
    3 paolo
    4 paolo
    5 paolo

    e fai SELECT COUNT(*) GROUP BY NOME

    ti ritorna 2 record, non 5

    NOME COUNT
    marco 2
    paolo 3
    Gli uomini si dividono in due categorie: i geni e quelli che dicono di esserlo. Io sono un genio.

  5. #5
    Utente di HTML.it L'avatar di muyuy
    Registrato dal
    Nov 2001
    Messaggi
    61
    Non riesco a far funzionare la query


    Dim objRs, sql

    sql="select Domanda1, COUNT(*) AS totale FROM TbDomande "

    Set ObjRs =Server.CreateObject("ADODB.Recordset")
    objRS.Open SQL, objConn, 3, 3, adCmdText

    Do Until objRs.EOF
    strd=objrs("Domanda1")


    e mi ritorna questo errore

    Tipo di errore:
    Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
    [Microsoft][Driver ODBC Microsoft Access] Impossibile eseguire una query che non include l'espressione "Domanda1" specificata come parte di una funzione di aggregazione.
    /quest/risp.asp, line 21


    .. insomma non riesco a fare il conto dei valori.
    In piu' mi si aggiunge il problema che non riesco a far stampare i record senza valore:


    Select case strd
    case "1"
    response.write "insufficiente:"& "........" &objRs("totale")& "
    "
    case "2"
    response.write "sufficiente:"& "........" &objRs("totale")& "
    "
    case "3"
    response.write "discreto:"& "........" &objRs("totale")& "
    "
    case "4"
    response.write "buono:"& "........" &objRs("totale")& "
    "
    case "Assente"
    response.write "Assente:"& "........" &objRs("totale")& "
    "
    case "5"
    response.write "ottimo:"& "........" &objRs("totale")& "
    "
    case "NA"
    response.write "NA:"& "........" &objRs("totale")& "
    "
    case ""
    response.write "Nnull:A:"& "........" &objRs("totale")& "
    "
    end select
    ObjRs.MoveNext
    Loop

    E' l'ultimo case che non mi viene stampato..

  6. #6
    Utente di HTML.it
    Registrato dal
    Feb 2005
    Messaggi
    21
    Fai cosi
    codice:
    objRS.Open SQL, objConn, 3, 3, 1

  7. #7
    Utente di HTML.it L'avatar di muyuy
    Registrato dal
    Nov 2001
    Messaggi
    61
    nulla..

    non si risolve

  8. #8
    Utente di HTML.it L'avatar di marco_c
    Registrato dal
    Jun 2004
    Messaggi
    1,047
    aggiungi GROUP BY Domanda1
    Gli uomini si dividono in due categorie: i geni e quelli che dicono di esserlo. Io sono un genio.

  9. #9
    Utente di HTML.it L'avatar di muyuy
    Registrato dal
    Nov 2001
    Messaggi
    61
    Ciao marco...

    il problema è che io cerco di avere il conto totale dei record ..
    se aggiungo GROUP BY Domanda1 mi viene fuori 8 e non il conto totale dei valori inseriti...

  10. #10
    Utente di HTML.it L'avatar di marco_c
    Registrato dal
    Jun 2004
    Messaggi
    1,047
    ok ma...
    la query così come l'hai impostata tu non può funzionare
    gli dici di selezionare 2 cose
    la prima sono tutti i valori del campo Domanda1 e vabè, questi valori saranno tanti quanti i record presenti nella tabella
    la seconda cosa è un count di tutti i record indistintamente (visto che non c'è un group by) e quindi è UN VALORE SOLO
    quindi lui si trova a dover gestire un risultato formato contemporaneamente da tanti record e da un record soltanto
    Gli uomini si dividono in due categorie: i geni e quelli che dicono di esserlo. Io sono un genio.

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 © 2026 vBulletin Solutions, Inc. All rights reserved.