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

    SQL: Conteggio riga in SELECT

    Ciao a tutti,

    sto cercando il modo di conteggiare le righe tramite select.

    Ad Esempio:

    Riga Descrizione
    1 Prodotto
    2 Ciclo
    3 Prova

    ecc...

    Non posso fare campi contatore altrimenti se elimino un record e lo inserisco di nuovo mi potrei trovare dei buchi nel conteggio.
    Ho letto un manuale in linea e mi parlava del comando ROWS, ma non ho visto come si utilizza.

    Sapete voi come posso avere un contatore di riga nella SELECT ?

  2. #2
    Utente di HTML.it L'avatar di longline
    Registrato dal
    Sep 2001
    Messaggi
    5,363
    Usa un contatore quando visualizzi le righe, invece di mettere la numerazione nel recordset risultante.

  3. #3
    A me serve un contatore nel recordset per filtrare dei record

  4. #4
    Originariamente inviato da massfant
    A me serve un contatore nel recordset per filtrare dei record
    spiegati meglio

  5. #5
    Una cosa simile:

    SELECT Count(*) AS NumRiga, IdProdotto FROM Prodotti


    Dove il numRiga mi restituisca il numero di riga del prodotto e che mi restituisca questa cosa:

    NumRiga Prodotto
    1 Penna
    2 Matita
    3 Lapis
    4 Astuccio
    5 Quaderno


    Ovviamente l'esempio che ho fatto mi restituise nella colonna NumRiga tutti valori 1

  6. #6
    codice:
    SELECT COUNT(IdProdotto) AS num FROM Prodotti
    Alla fine hai un recordset con il campo "num" che riporta il numero di righe.

    Altrimenti potresti sempre usare il metodo per contare i record risultanti dalla tua QUERY:

    codice:
    <%
    set conn=Server.CreateObject("ADODB.Connection")
    conn.Provider="Microsoft.Jet.OLEDB.4.0"
    conn.Open(Server.Mappath("tuoDB.mdb"))
    
    set rs=Server.CreateObject("ADODB.recordset")
    sql="SELECT * FROM Prodotti"
    rs.Open sql,conn
    
    if rs.Supports(adApproxPosition)=true then
      i=rs.RecordCount
      response.write("Il numero di prodotti è: " & i)
    end if
    
    rs.Close
    conn.Close
    %>
    Spero sia utile.

    Ciao
    Manu
    Emanuele Boccaletti
    _____________________________________
    www.i23.eu
    emanuele@i23.eu

  7. #7
    Ti ringrazio, ma non volevo conteggiare i record.
    Io volevo tramite SELECT, avere come risultato questo:


    NumRiga Prodotto
    1 Penna
    2 Matita
    3 Lapis
    4 Astuccio
    5 Quaderno


    Dove i numeri in grassetto sono restituiti dalla SELECT e corrispondono al contatore di riga. Per spiegarmi meglio:

    Penna è il 1° record
    Lapis è il 3° record

  8. #8
    non puoi farlo con un colpo solo. utilizzi access?

  9. #9
    Utente di HTML.it L'avatar di chris
    Registrato dal
    Sep 1999
    Messaggi
    1,568
    Metti una variabile nel ciclo, che aumenti di una unità ogni volta che cambi record, e la stampi.
    "Nei prossimi tre anni col mio governo vogliamo vincere anche il cancro, che colpisce ogni anno 250.000 italiani e riguarda quasi due milioni di nostri concittadini"

  10. #10
    Scusami, ma all'inizio avevo scritto questo:

    "sto cercando il modo di conteggiare le righe tramite select"


    Quindi escludo qualsiasi contatore nel ciclo. A me serve qualcosa nel comando SELECT che mi conteggi le righe visualizzate un pò come fa ORACLE con il campo NumRow (o una cosa simile).
    In un manuale SQL ho letto del comando ROWS ma non so come si utilizza.

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.