Visualizzazione dei risultati da 1 a 6 su 6

Discussione: Count, Having

  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    684

    Count, Having

    Ho questo codice:
    codice:
    <%
    Set rsDati = conn.Execute("SELECT COUNT(*) As contaEmail FROM utenti WHERE email = '"& replace(request.form("mittenteEmail"), "'", "''") &"'")
    	
    	IF rsDati("contaEmail") = 1 THEN
    		response.write ("Spedisci email, non ci sono doppioni di questa email")
    	ELSE
    		response.write ("Ci sono "& rsDati("contaEmail") &" email uguali")
    	END IF
    	
    	Set rsDati = Nothing
    %>
    Se aggiungo il campo 'user' alla query SQL mi dice:
    Impossibile eseguire una query che non include l'espressione "user" specificata come parte di una funzione di aggregazione.

    Ovviamete perchè non ho definito il "GROUP BY user" ma poi l'alias 'contaEmail' mi restituisce 1!!!

    Infatti voglio fare un controllo condizionale, se ci sono 2 email uguali non può fare alcune operazioni:
    IF rsdati("contaEmail") = 1 THEN....

  2. #2

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    684
    nella tabella ho 2 campi user e pwd. L'utente inserisce la sua email per richiedere i dati di accesso dimenticati. Controllo se ci sono più record con la stessa email e solo in caso negativo invio i dati di accesso.

    Vorrei evitare di fare 2 query.

  4. #4
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    684
    Aggiungo che nel form che invia la query l'utente inserisce solo l'email. Quindi la ricerca viene effettuata solo sul campo email e non su più campi.

  5. #5
    temo che tu debba fare 2 query

  6. #6
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    684
    Ho risolto con una sola QUERY, vedi un po e funziona perfettamente!
    codice:
    SQLCOUNT = "(SELECT COUNT(*) FROM utenti WHERE email = '"& replace(request.form("mittenteEmail"), "'", "''") &"')"
    SQLEMAIL = ("SELECT user, pwd FROM utenti WHERE email = '"& replace(request.form("mittenteEmail"), "'", "''") &"' AND attivo = 1 AND "& SQLCOUNT &" = 1")

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.