Newsgroup: it.comp.www.asp
Titolo: [Help] SQL, ASP

Ciao a tutti, ho un problemino...
Sto lavorando con Fp98 e Asp. Ho un database con una serie di dati, tramite
Asp faccio alcune ricerche, mi connetto al db, etc.
Il problema è che mi occorre una query particolare:
ad esempio, se l'utente vuole ricercare il museo Egizio, io vorrei avere la
possibilità di contare il numero dei musei presenti nel db e successivamente
di visualizzarli.
Ho provato con
Select count (*) as [numerototale]
ma non funziona, voi sapete aiutarmi?
Grazie!
 Monica

Mi sembra che il count tu lo possa fare solo se fai un
raggruppamento...
prova con 
select count(*) as numerototale from tabella group by museo
potrebbe non funzionare...magari dimmi come hai strutturato il
db...spero per te che tu abbia indicizzato i musei....
Ciao
Liga97
E-Mail: 
lig...@alo.it
ICQ: 11362849

Ecco quello che ti serve.
<%
'dove rs č il tuo Recordset
Conta = 0
On Error Resume Next
rs.MoveFirst
do while Not rs.eof
conta = conta + 1
rs.MoveNext
loop
%>
<p>Sono stati trovati <strong><%= conta %></strong> risultati.</p>
Bye, Manuel

Ma Manuel che consigli dai.....fare un ciclo quando c'è la select che
lo fa da solo.risparmiando tempo...che in internet è fondamentale....


...


Oltre a una questione di tempo....che per l'utente è la massima
priorità....lo puoi anche usare il tuo ciclo ma a mio parere su
tabelle piccole (che contengono pochi records) ma quando il db si
ingrossa, vatti a fare un ciclo su 1000 record o anche 500, c'è il
COUNT SQL che fa tutto da solo e più velocemente.


Sono dinuovo io... Questa č l'istruzione che io utilizzo:
SQLQuery = "SELECT COUNT (*) AS TotaleMusei FROM musei  WHERE Nome Like '%"
+TxtNome +"%' GROUPBY Nome"
ma mi da il seguente errore:
Microsoft OLE DB Provider for ODBC Drivers errore "80040e14"
[Microsoft][Driver ODBC Microsoft Access 97] Errore di sintassi (operatore
mancante) nell'espressione della query 'Nome alike '%%' GROUPBY Nome'.
/musei/nmuseitrovati.asp, riga 35 (quella della query)
che fare??
(TxtNome č la stringa che l'utente digita..)
Ciao! Monica

Prova così:
SQLQuery = "SELECT COUNT (*) AS TotaleMusei FROM musei  WHERE Nome
Like '%" & TxtNome & "%' GROUP BY Nome"
Ciao e fammi sapere se va bene...


Sono dinuovo io... Questa č l'istruzione che io utilizzo:
SQLQuery = "SELECT COUNT (*) AS TotaleMusei FROM musei  WHERE Nome Like '%"


>sql ansi:<<
  select count(*) as NMusei from tbl_musei
Io lo uso normalmente con FP98 e SQLServer.
Cheers,
                    Marco

Già fatto, ma non gli piace proprio questa query....
Non so più cosa fare...

Mandami la struttura del tuo db..oppure mandami proprio il tuo db
(magari compattato) via email oconnettiti via ICQ.


...


Tutto in una riga


Questo è in SQL
'SELECT Count(*) AS TotaleMusei
'FROM musei
'WHERE (((musei.nome) Like 'quello che vuoi'));
Bye, Manuel

Prova cosi':
SQLQuery = "SELECT COUNT (*) AS TotaleMusei FROM musei  WHERE Nome Like '%"
SQLQuery = SQLQuery  & txtnome
SQLQuery = SQLQuery & "%' GROUPBY Nome"
quando mi incasino io comincio a dividere in parti l'SQL cosi' rischio di
fare meno errori.
Fammi sapere.
Simone
P.S.: Comunque per provare se ti funziona il count leva tutta la clausola
where, cosi' almeno testi una cosa.
Ariciao

Non so più cosa fare...
Prova subito prima della query a fare un response.wryte(TxtNome) per sapere
esattamente cosa contiene.
Saluti.
Stefano.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Moderatore di it.comp.www.asp
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+TxtNome +"%' GROUPBY Nome"
Ci provo anch'io :) sperando di aver capito il problema:
SQLQuery = "SELECT COUNT(Nome) AS TotaleMusei FROM musei WHERE Nome Like
'%"+TxtNome +"%'"
(Non serve il GROUP BY)
ciao ciao
PaoloS
http://www.docnet.it/stincpao