Ok tengo 2 preguntas 1) he buscado en google el error(en el título), pero me parece que no puede conseguir para que me ayude, mi proc:
CREATE PROCEDURE [dbo].[p_Target]
AS
BEGIN
SET NOCOUNT ON
CREATE TABLE #tmp1
(
AUD_ID BIGINT,
RowCounter BIGINT,
DistinctCounter BIGINT,
NACounter BIGINT,
Total BIGINT,
[Status] VARCHAR(MAX)
)
INSERT INTO #tmp1 EXEC [p_GetCompleteIncompleteNaOverviewSCORE]
DECLARE @Total AS INT
SELECT @Total = COUNT(*)
FROM (
SELECT CASE WHEN CONVERT(DATETIME,CONVERT(CHAR(10),DATEADD(DAY,0,t2.AUD_TargetDate), 101)) < CONVERT(DATETIME,CONVERT(CHAR(10),DATEADD(DAY,0,GETDATE()), 101))
THEN 'Over Due: '
ELSE 'On Time: ' END AS [Target Status]
FROM #tmp1 t1 INNER JOIN dbo.Audit t2
ON t1.AUD_ID = t2.AUD_ID
WHERE t1.[Status] = 'Open') DER
SELECT ([Target Status] + '' + CAST(COUNT(*) AS NVARCHAR(255)) + ' of ' + CAST(@Total AS NVARCHAR(255))) AS TargetStatus, (SELECT COUNT(*)) * 100 / (SELECT ([Target Status] + '' + CAST(COUNT(*) AS NVARCHAR(255))) AS [Count]
FROM (
SELECT CASE WHEN CONVERT(DATETIME,CONVERT(CHAR(10),DATEADD(DAY,0,t2.AUD_TargetDate), 101)) < CONVERT(DATETIME,CONVERT(CHAR(10),DATEADD(DAY,0,GETDATE()), 101))
THEN 'Over Due: '
ELSE 'On Time: ' END AS [Target Status]
FROM #tmp1 t1 INNER JOIN dbo.Audit t2
ON t1.AUD_ID = t2.AUD_ID
WHERE t1.[Status] = 'Open') DER
GROUP BY [Target Status]
END
GO
He atado de añadir ) para NVARCHAR(255))) AS [Count]
pero todavía errores,
2)necesito conseguir AS [Count]
como un porcentaje, si alguien puede ayudar? Que es mi código try tal vez estoy en el camino correcto.?
ET NOCOUNT ON
faltaS
es un error tipográfico?- Que es pegar el error.
Falta un cierre de paréntesis en el final de subselección. También le falta la » S » en el SET NOCOUNT. Actualizaciones de abajo.
Es la falta de la ‘S’ en
SET NOCOUNT ON
después de la inicial de comenzar tal vez?Parece que su
SELECT
declaración sobre su última últimaFROM
declaración de naciones unidas cierra paréntesis. Que haría el analizador de tirar un error cuando llega a laEND
declaración, ya que todavía piensa que está trabajando en laSELECT
.Siempre que obtenga una
incorrect Syntax
error es mejor ir con cuidado a través de su código y comprobar que todas las declaraciones están bien formadas y completa. Normalmente google no puede ayudarle, ya que es muy específico para el código. Un buen enfoque para encontrar la falla es localizar el punto del error (END
en este caso) y trabajar hacia atrás. La causa del error puede ser muy muy por encima de el punto real en que se produce el error, pero será en algún lugar por encima de la de error. Y la lectura hacia atrás puede ayudar a detectar errores simples.