Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Test ride Can-Am Origin: la moto elettrica che fa dimenticare il motore a scoppio (ma occhio all'autonomia)
Test ride Can-Am Origin: la moto elettrica che fa dimenticare il motore a scoppio (ma occhio all'autonomia)
Abbiamo provato per una settimana intera la Can-Am Origin, la Dual Sport elettrica del gruppo canadese BRP: ecco com'è andata tra città, autostrada e un primo assaggio di sterrato
Logitech G325, G305 e G316 X: il tris per chi non vuole rinunciare a nulla, spendendo poco
Logitech G325, G305 e G316 X: il tris per chi non vuole rinunciare a nulla, spendendo poco
Nelle ultime settimane abbiamo provato il mouse Logitech G305, la tastiera G316 X 98 e le cuffie G325. Si tratta del setup entry-level di Logitech che ormai, di "entry-level" ha ben poco. Tastiera e mouse offrono prestazioni di livello competitivo con quasi nessuna rinuncia e un livello di personalizzazione estremamente elevato. Le cuffie, invece, hanno mostrato qualche debolezza, ma propongono un ventaglio di funzionalità completo che consente di abbandonare completamente i cavi
Recensione POCO F9 pro: potenza da vero top di gamma, display da 185 Hz e finalmente una fotocamera da prendere sul serio
Recensione POCO F9 pro: potenza da vero top di gamma, display da 185 Hz e finalmente una fotocamera da prendere sul serio
POCO F9 Pro arriva sul mercato con l'obiettivo di portare prestazioni da smartphone top di gamma in una fascia di prezzo "più aggressiva", senza rinunciare a un comparto fotografico finalmente all'altezza. Dopo averlo testato sul campo, emerge uno smartphone molto più completo rispetto alla generazione precedente, ma anche con alcuni piccoli compromessi che diventano difficili da ignorare quando il prezzo di listino sfiora i 1.000 euro.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 02-10-2003, 14:22   #1
SteR9
Senior Member
 
L'Avatar di SteR9
 
Iscritto dal: Jun 2002
Città: Milano
Messaggi: 959
asp conteggio dati...

ragazzi ho un problema...
ho un database nella quale dovrei contare tutti i dati che si ripetono in una stessa colonna e andare a stampare quanti sono...
mi spiego meglio sto creando un forum e ho una tabella nella quale vengono inserite le risposte.
Ho creato una colonna chiamata IDTopic nella quale inserisco l'id del topic a cui si riferisce la risposta
ora io avrei bisogno di contare quanti IDtopic uguali ci sono e andare a stampare il numero.Ad esempio se ho 4 risposte con idtopic 1 vado a stampare 4 di fianco al titolo del messaggio se ho 7 risposte con idtopic 10 vado a stampare 7 nel di fianco al messaggio con idtopic 10

io l'ho fatto così solo che mi stampa solo il numero di risposte del primo messaggio

Codice:
dim controllo
dim contatore

contatore = 0
controllo = objrecordset.Fields("IdTopic")
do while Not objRecordset.EOF 
  if objrecordset.Fields("IdTopic") = controllo then
   contatore = contatore + 1
	'response.Write(contatore)
end if
objRecordset.MoveNext
loop
response.Write(contatore)
spero di essermi spiegato bene
SteR9 è offline   Rispondi citando il messaggio o parte di esso
Old 02-10-2003, 14:40   #2
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Scusa...non puoi fare con SQL ?

"SELECT count(*) As conteggio from tabella WHERE IdTopic = " & controllo & ";"


objRecordset("conteggio") contiene il numero di messaggi di quel topic...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 02-10-2003, 17:10   #3
matpez
Senior Member
 
L'Avatar di matpez
 
Iscritto dal: Aug 2002
Città: Biella
Messaggi: 1882
La cosa corretta è quella di cionci....la tua è un processo macchinoso e lento e soprattutto esegui un ciclo che tiene occupato il processore èer molto tempo quando crai una tabella con molti dati.

Quando hai a che fare con un database tutti i calcoli se puoi farli con il linguaggio SQL è motlo ma molto meglio!
matpez è offline   Rispondi citando il messaggio o parte di esso
Old 02-10-2003, 17:40   #4
SteR9
Senior Member
 
L'Avatar di SteR9
 
Iscritto dal: Jun 2002
Città: Milano
Messaggi: 959
Quote:
Originariamente inviato da matpez
La cosa corretta è quella di cionci....la tua è un processo macchinoso e lento e soprattutto esegui un ciclo che tiene occupato il processore èer molto tempo quando crai una tabella con molti dati.

Quando hai a che fare con un database tutti i calcoli se puoi farli con il linguaggio SQL è motlo ma molto meglio!
ma il problema è che anche se lo faccio così mi stampa sempre solo il numero di risposte del primo topic...io invece vorrei stamparlo di tutti
SteR9 è offline   Rispondi citando il messaggio o parte di esso
Old 02-10-2003, 17:52   #5
matpez
Senior Member
 
L'Avatar di matpez
 
Iscritto dal: Aug 2002
Città: Biella
Messaggi: 1882
Allora prova a fare cosi:

SELECT IdTopic , Count(*) as ciao
FROM Tua_Tabella
GROUP BY IdTopic
ORDER BY IdTopic
matpez è offline   Rispondi citando il messaggio o parte di esso
Old 02-10-2003, 21:34   #6
SteR9
Senior Member
 
L'Avatar di SteR9
 
Iscritto dal: Jun 2002
Città: Milano
Messaggi: 959
Quote:
Originariamente inviato da matpez
Allora prova a fare cosi:

SELECT IdTopic , Count(*) as ciao
FROM Tua_Tabella
GROUP BY IdTopic
ORDER BY IdTopic
ho provato a fare la query in access e funziona ma da asp mi stampa sempre solo il numero di risposte del primo topic...
Codice:
Set objRecordset = objConnessione.Execute("SELECT IdTopic , Count(*) as Conteggio FROM Risposte GROUP BY IdTopic ORDER BY IdTopic")
response.Write(objRecordset("conteggio"))
come posso fare??
SteR9 è offline   Rispondi citando il messaggio o parte di esso
Old 02-10-2003, 22:42   #7
matpez
Senior Member
 
L'Avatar di matpez
 
Iscritto dal: Aug 2002
Città: Biella
Messaggi: 1882
Mi sembra ovvio che nn la stampi tutta, il recordset si fissa sul primo record (se esiste)....

fai cosi:

Set objRecordset = objConnessione.Execute("SELECT IdTopic , Count(*) as Conteggio FROM Risposte GROUP BY IdTopic ORDER BY IdTopic")

while not objRecordset.EOF
response.write objRecordset("IdTopic") & " ... " & objRecordset("Conteggio") & "<br>"
objRecordset.movenext
wend
matpez è offline   Rispondi citando il messaggio o parte di esso
Old 03-10-2003, 12:57   #8
SteR9
Senior Member
 
L'Avatar di SteR9
 
Iscritto dal: Jun 2002
Città: Milano
Messaggi: 959
Quote:
Originariamente inviato da matpez
Mi sembra ovvio che nn la stampi tutta, il recordset si fissa sul primo record (se esiste)....

fai cosi:

Set objRecordset = objConnessione.Execute("SELECT IdTopic , Count(*) as Conteggio FROM Risposte GROUP BY IdTopic ORDER BY IdTopic")

while not objRecordset.EOF
response.write objRecordset("IdTopic") & " ... " & objRecordset("Conteggio") & "<br>"
objRecordset.movenext
wend
eheh che scemo che sono...cmq funziona grazie!
ciao!
SteR9 è offline   Rispondi citando il messaggio o parte di esso
Old 03-10-2003, 13:30   #9
matpez
Senior Member
 
L'Avatar di matpez
 
Iscritto dal: Aug 2002
Città: Biella
Messaggi: 1882
di nulla
matpez è offline   Rispondi citando il messaggio o parte di esso
Old 03-10-2003, 17:09   #10
SteR9
Senior Member
 
L'Avatar di SteR9
 
Iscritto dal: Jun 2002
Città: Milano
Messaggi: 959
però ho un problema...allora...

tramite un do while Not objRecordset.EOF vado a stampare la tabella e i titoli di ogni topic....però non so come fare ad andare a stampare anche il contatore,visto che serve un altro while non penso si possano fare 2 while uno dentro l'altro...
come posso risolvere??
SteR9 è offline   Rispondi citando il messaggio o parte di esso
Old 03-10-2003, 18:18   #11
matpez
Senior Member
 
L'Avatar di matpez
 
Iscritto dal: Aug 2002
Città: Biella
Messaggi: 1882
Lo fai in una query sola, fai una SELECT multipla, in questa maniera...guarda per esempio la mia:

SELECT ArcNews.IDNews, TabTipiNews.TipoNews, ArcNews.IDMembro, TabMembri.Nick, TabMembri.Trasferito, ArcNews.Data, ArcNews.Titolo, ArcNews.Testo, (SELECT COUNT(*) FROM ArcNewsReply WHERE ArcNewsReply.IDNews=ArcNews.IDNews) AS NumReply
FROM TabTipiNews
INNER JOIN (TabMembri INNER JOIN ArcNews ON TabMembri.IDMembro = ArcNews.IDMembro) ON TabTipiNews.IDTipoNews = ArcNews.IDTipoNews
ORDER BY ArcNews.Data DESC


Se qlc nn ti chiaro te lo rispiego
matpez è offline   Rispondi citando il messaggio o parte di esso
Old 03-10-2003, 18:47   #12
SteR9
Senior Member
 
L'Avatar di SteR9
 
Iscritto dal: Jun 2002
Città: Milano
Messaggi: 959
non mi è chiarissimo....io ho fatto così

Set objRecordset = objConnessione.Execute("SELECT *,(SELECT IdTopic , Count(*) as Conteggio FROM Risposte GROUP BY IdTopic ORDER BY IdTopic) FROM NuovoMessaggio")

però mi da un errore...
SteR9 è offline   Rispondi citando il messaggio o parte di esso
Old 03-10-2003, 19:13   #13
matpez
Senior Member
 
L'Avatar di matpez
 
Iscritto dal: Aug 2002
Città: Biella
Messaggi: 1882
Probabilemte ti dirà ch la funzione fa parte di un aggregazione...cmq quello che vedi da me è la stampa delle news ed in più c'è anche il numero di reply fatti....

non è difficile, inanzitutto devi scrivere nella SELECT i nomi che ti interesano e non un *, poi in nella SELECT annidata metti cosa del genere: SELECT COUNT(*) FROM ArcNewsReply WHERE ArcNewsReply.IDNews=ArcNews.IDNews) AS NumReply, dove se noti c'è una where che va a puntare ad ogni singolo record e poi va a contare tutte le risponse di quella news....non è facile da immaginare, pensa che una Query viene formata a righe, per cui quando tu gli dai in pasto una stringa esecutiva, lui comincia a fare un elenco, bene, qui prende tutto quello che ti interessa e poi fai la seconda Select che andarà a fare una where proprio nella riga che ti interessa a te andando a contare i reply....

Prova a crearne una tu, se nn ce la fai passami il database che te la creo io...cosi la prossima volta sai come fare!

ciaoooooooooooooooooo
matpez è offline   Rispondi citando il messaggio o parte di esso
Old 03-10-2003, 20:13   #14
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
SELECT Risposte.IdTopic, TitoloTopic, count(*)
FROM Risposte INNER JOIN NuovoMessaggio
GROUP BY Risposte.IDTopic, TitoloTopic;
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 04-10-2003, 13:38   #15
SteR9
Senior Member
 
L'Avatar di SteR9
 
Iscritto dal: Jun 2002
Città: Milano
Messaggi: 959
Quote:
Originariamente inviato da cionci
SELECT Risposte.IdTopic, TitoloTopic, count(*)
FROM Risposte INNER JOIN NuovoMessaggio
GROUP BY Risposte.IDTopic, TitoloTopic;
mi dice Errore di sintassi nella proposizione FROM.
SteR9 è offline   Rispondi citando il messaggio o parte di esso
Old 04-10-2003, 14:04   #16
matpez
Senior Member
 
L'Avatar di matpez
 
Iscritto dal: Aug 2002
Città: Biella
Messaggi: 1882
E sa fai una cosa del genere:

Set objRecordset = objConnessione.Execute("SELECT CAMPI_CHE_TI_INTERESSANO, (SELECT COUNT(*) FROM Risposte WHERE Risposte.IDTopic=Topic.IDTopic) as Conteggio FROM Topic")
matpez è offline   Rispondi citando il messaggio o parte di esso
Old 04-10-2003, 17:51   #17
SteR9
Senior Member
 
L'Avatar di SteR9
 
Iscritto dal: Jun 2002
Città: Milano
Messaggi: 959
Quote:
Originariamente inviato da matpez
E sa fai una cosa del genere:

Set objRecordset = objConnessione.Execute("SELECT CAMPI_CHE_TI_INTERESSANO, (SELECT COUNT(*) FROM Risposte WHERE Risposte.IDTopic=Topic.IDTopic) as Conteggio FROM Topic")
mmm così mi somma tutto non mi fa la somma di quelli uguali..
SteR9 è offline   Rispondi citando il messaggio o parte di esso
Old 04-10-2003, 20:34   #18
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Quote:
Originariamente inviato da SteR9
mi dice Errore di sintassi nella proposizione FROM.
Mi ero scordato un pezzo del JOIN...

SELECT Risposte.IdTopic, TitoloTopic, count(*)
FROM Risposte INNER JOIN NuovoMessaggio ON Risposte.IDTopic = NuovoMessaggio.IDTopic
GROUP BY Risposte.IDTopic, TitoloTopic;
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 05-10-2003, 12:02   #19
SteR9
Senior Member
 
L'Avatar di SteR9
 
Iscritto dal: Jun 2002
Città: Milano
Messaggi: 959
ho modificato la query così SELECT IDmessaggio,TitoloMessaggio,AutoreMessaggio,DataMessaggio,(SELECT Risposte.IdTopic, count(*) as conteggio FROM Risposte INNER JOIN NuovoMessaggio ON Risposte.IDTopic = NuovoMessaggio.IDMessaggio GROUP BY Risposte.IDTopic) FROM NuovoMessaggio "

ma mi da questo errore...

È stata scritta una sottoquery che può restituire più campi senza utilizzare la parola riservata EXISTS nella proposizione FROM della query principale. Modificare l'istruzione SELECT nella sottoquery per richiedere soltanto un campo.

ufff ce la farò??!
SteR9 è offline   Rispondi citando il messaggio o parte di esso
Old 05-10-2003, 12:42   #20
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Quote:
Originariamente inviato da SteR9
ho modificato la query così SELECT IDmessaggio,TitoloMessaggio,AutoreMessaggio,DataMessaggio,(SELECT Risposte.IdTopic, count(*) as conteggio FROM Risposte INNER JOIN NuovoMessaggio ON Risposte.IDTopic = NuovoMessaggio.IDMessaggio GROUP BY Risposte.IDTopic) FROM NuovoMessaggio "
Non puoi mettere una select nella lista dei campi di un'altra select !!!

SELECT IDmessaggio, TitoloMessaggio, AutoreMessaggio, DataMessaggio, count(*)
FROM Risposte INNER JOIN NuovoMessaggio ON Risposte.IDTopic = NuovoMessaggio.IDMessaggio
GROUP BY IDmessaggio, TitoloMessaggio, AutoreMessaggio, DataMessaggio;
cionci è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Test ride Can-Am Origin: la moto elettrica che fa dimenticare il motore a scoppio (ma occhio all'autonomia) Test ride Can-Am Origin: la moto elettrica che f...
Logitech G325, G305 e G316 X: il tris per chi non vuole rinunciare a nulla, spendendo poco Logitech G325, G305 e G316 X: il tris per chi no...
Recensione POCO F9 pro: potenza da vero top di gamma, display da 185 Hz e finalmente una fotocamera da prendere sul serio Recensione POCO F9 pro: potenza da vero top di g...
Tra audio e AI: la ricetta di Qualcomm per l'agentic AI Tra audio e AI: la ricetta di Qualcomm per l'age...
Qualcomm annuncia la nuova generazione di SoC Snapdragon 8 Elite Gen 6 Qualcomm annuncia la nuova generazione di SoC Sn...
Grok 4.6, Claude Fable 5.1 e GPT-6 Astra...
Apple: condanna da 5,7 miliardi di dolla...
Halo potrebbe ripartire da zero con il p...
A 200€ (sconto al check-out) è il...
899€, ci sono 2 Smart TV OLED da 55 poll...
Huawei Mate 90, il lancio è ormai...
PlayStation 3: ricercatori estraggono do...
Google fa infuriare gli utenti con le nu...
WIMIUS K14 a 329,58€ con coupon: proiett...
NAS UGREEN in offerta: quale conviene co...
Peter Thiel spara a zero su papa Leone X...
DLSS 5 su AMD Radeon, aggiornamenti a va...
Ripetitore FRITZ!Mesh 1600 a 59,72€: Wi-...
Il CEO di Intel scommette (personalmente...
Una RTX 5090 via Wi-Fi 7: WiCi One prova...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 10:18.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v