Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2011
    Messaggi
    31

    Query che non funzione: non da risultato

    Ciao a tutti.
    Forse ho un problema banale ma proprio non riesco a risolverlo.

    Io ho una query con due select.

    SELECT ISNULL(SUM(SCONTO), 0) AS SCONTO_UNO,
    (SELECT ISNULL(SUM(SCONTO), 0) AS SCONTO_DUE
    FROM Tabella WHERE
    (DATA >= '01/01/2012 00:00:00.000') AND (DATA <= '31/12/2012 23:59:59.997')
    GROUP BY CONDIZIONE_UNO HAVING (CONDIZIONE_UNO = 1)) AS SCONTO_DUE

    FROM TABELLA AS TABELLA_1
    WHERE (DATA >= '01/01/2012 00:00:00.000') AND (DATA <= '31/12/2012 23:59:59.997') GROUP BY CONDIZIONE_UNO HAVING (CONDIZIONE_UNO = 0)
    Il mio problema è questo.
    Se sia SCONTO_UNO che SCONTO_DUE danno qualche risultato, allora la query funziona.
    Ma se uno dei due non da nessun risultato, anche se l'altro è 'pieno' la query non restituisce nulla.

    Spero di essermi riuscita a spiegare.
    Qualcuno sa come poter sistemare in modo che, per esempio, se SCONTO_UNO non da nessun record mi restituisca lo stesso zero così da poter far vedere anche il calcolo di SCONTO_DUE che magari è uguale a 5?

    Grazie
    FN

  2. #2
    stai usando Sql Server? andrebbe indicato come da regolamento

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2011
    Messaggi
    31
    Oh, cavolo scusa.
    Solo che è tutto il pm che ci sono sopra e sto perdendo colpi.

    Sì esatto, sto usando SQL SERVER

  4. #4
    perché non vai per step?

    codice:
    Declare @Sconto_uno ...
    Declare @Sconto_due ...
    
    SELECT @Sconto_Uno=SUM(....
    SELECT @Sconto_Due=SUM(....
    
    SELECT ISNULL(@Sconto_Uno,0), ISNULL(@Sconto_Due,0)
    così non complichi la vita né a te né al server, e puoi debuggare con più facilità


  5. #5
    Utente di HTML.it
    Registrato dal
    May 2011
    Messaggi
    31
    Ciao.
    Grazie per la risposta.

    Se non c'è altra possibilità, mi sa che farò proprio così.
    Farò due query e ricaverò due dati .. era giusto per fare una query sola e velocizzare gli altri controlli.

    Grazie ancora
    FN

  6. #6
    non essere così certa che con una sola query (costruita come l'hai costruita tu) la cosa sia più veloce

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.