Sintaxis incorrecta cerca de mayúsculas y minúsculas
Avatar Dhn
Pregunta contestada

Sintaxis incorrecta cerca de mayúsculas y minúsculas

Estoy tratando de ejecutar esta consulta, pero obtengo una sintaxis incorrecta cerca de mayúsculas y minúsculas y mySum

Select 
    sum(sumTotal) as mySum 
from
    customertrans 
where 
    DateTime >= DATEPART(HOUR, '6:00')
    case when mySum >25 
    then update TopStatistics 
         set SumDelivery = mySum
Mostrar la mejor respuesta

"Stack Overflow es un sitio de preguntas y respuestas para programadores profesionales y entusiastas". Debe leer sobre cómo responder

No estoy seguro de tus objetivos, pero creo que necesitas 2 pasos:

Select sum(sumTotal) as mySum,
       case when sum(sumTotal)>25 then 'update' ELSE 'NoUpdate' END AS TopStatistics 
from customertrans 
where  DateTime >= DATEPART(HOUR, '6:00')

Y luego actualice según el resultado anterior.

Es un paso en la dirección correcta.

Avatar Dhn

Gracias, pero ¿por qué mi actualización no funciona? actualice TopStatistics set sumretail= case when (Seleccione sum(sumTotal) as mysum from customertrans where DateTime>= DATEPART(HOUR, '6:00'))> (seleccione Top(1) SumRetail from TopStatistics) luego mysum end obtengo una sintaxis incorrecta en mi suma

Lo que estás intentando no es posible. Esto debería funcionar:

;with cte (mySum) as 
(
    Select sum(sumTotal) as mySumTopStatistics 
    from customertrans 
    where  DateTime >= DATEPART(HOUR, '6:00')

)
update TopStatistics
set SumDelivery = mySum
where <Search condition with cte table>