estou precisando criar counts, um para a quantidade de laudos por servidores, e uma quantidade de laudos por secretarias
eu queria saber o que devo acrecentar ou retirar deste codigo
SELECT U.T01004_S_SIGLA AS Secretaria
, S.T01001_I_MATRICULA AS Matrícula
, P.T01000_S_NOME AS Nome
, LTS.T01135_D_DTEXAME AS Exame
, RH.fnDadosCarreiraCargo(S.T01002_I_CDENT, S.T01036_I_CDHIERARQ, 0) AS Cargo
, LTRIM(RTRIM(T01135_S_CID1)) AS CID
, ISNULL(DATEDIFF(DAY, LAUDO.T01101_D_DTININCAP, LAUDO.T01101_D_DTFIMINCAP) + 1, 0) AS [Dias]
, PP.T01000_S_NOME AS Perito
, CASE ISNULL(LAUDO.T01101_I_INDACIDTRAB, 0) WHEN 0
THEN '-' WHEN 1 THEN 'N' WHEN 2 THEN 'S' END AS AT
, CASE ISNULL(LAUDO.T01101_I_INDDOENTRAB, 0) WHEN 0
THEN '-' WHEN 1 THEN 'N' WHEN 2 THEN 'S' END AS DO
, ISNULL(LISTA_TPLAUDO.T01071_S_VALORSTR, LISTA_TPLAUDO_APOS.T01071_S_VALORSTR) AS Laudo
, LISTA_TPCONCLUSAO.T01071_S_VALORSTR AS Conclusão
, CAST(DATEDIFF("D",P.T01000_D_DTNASC,getdate())/365.25 AS INT) AS Idade
FROM RH.T01135_LTS LTS
LEFT JOIN RH.T01101_LAUDO LAUDO
ON LAUDO.T01135_I_CDLTS = LTS.T01135_I_CDLTS
AND LAUDO.T01135_I_ANO = LTS.T01135_I_ANO
AND LAUDO.T01135_I_SEQUENCIA = LTS.T01135_I_SEQUENCIA
AND LAUDO.T01135_I_TPDOC = LTS.T01135_I_TPDOC
LEFT JOIN RH.T01260_REVISAOAPO APOS
ON APOS.T01135_I_CDLTS = LTS.T01135_I_CDLTS
AND APOS.T01135_I_ANO = LTS.T01135_I_ANO
AND APOS.T01135_I_SEQUENCIA = LTS.T01135_I_SEQUENCIA
AND APOS.T01135_I_TPDOC = LTS.T01135_I_TPDOC
INNER JOIN RH.T01001_SERVIDOR S
ON S.T01002_I_CDENT = LTS.T01002_I_CDENT
AND S.T01001_I_MATRICULA = LTS.T01001_I_MATRICULA
INNER JOIN RH.T01000_PESFISICA P
ON P.T01000_I_CDPESFIS = S.T01000_I_CDPESFIS
INNER JOIN RH.T01004_UNIDFUNC U
ON U.T01002_I_CDENT = S.T01002_I_CDENT
AND U.T01004_I_CDUNIDFUN = S.T01001_I_CDORGLOT
AND U.T01004_I_VERSAO = S.T01001_I_VORGLOT
LEFT JOIN RH.T01265_FUNCPERICIA PERITO
ON PERITO.T01265_I_CDFUNCIONARIO = LTS.T01135_I_CDMEDPERITO
LEFT JOIN RH.T01001_SERVIDOR SP
ON SP.T01002_I_CDENT = PERITO.T01002_I_CDENT
AND SP.T01001_I_MATRICULA = PERITO.T01001_I_MATRICULA
LEFT JOIN RH.T01000_PESFISICA PP
ON PP.T01000_I_CDPESFIS = SP.T01000_I_CDPESFIS
LEFT JOIN RH.T01071_ITEMLISTA LISTA_TPLAUDO
ON LISTA_TPLAUDO.T01071_I_CDITEM = LAUDO.T01101_I_TPLAUDO
LEFT JOIN RH.T01071_ITEMLISTA LISTA_TPLAUDO_APOS
ON LISTA_TPLAUDO_APOS.T01071_I_CDITEM = APOS.T01260_I_TPLAUDO
LEFT JOIN RH.T01071_ITEMLISTA LISTA_TPCONCLUSAO
ON LISTA_TPCONCLUSAO.T01071_I_CDITEM = LTS.T01135_I_TPCONCLUSAO
WHERE LTS.T01135_I_TPDOC = 453
AND LTS.T01135_D_DTEXAME >= @DataIni
AND LTS.T01135_D_DTEXAME <= @DataFim
AND (@TipoLaudo IS NULL OR LAUDO.T01101_I_TPLAUDO = @TipoLaudo OR
APOS.T01260_I_TPLAUDO = @TipoLaudo)
AND (@TipoConclusao IS NULL OR LTS.T01135_I_TPCONCLUSAO = @TipoConclusao)
AND (@MatriculaPerito IS NULL OR @MatriculaPerito = PERITO.T01001_I_MATRICULA)
AND (@MatriculaServidor IS NULL OR @MatriculaServidor = S.T01001_I_MATRICULA)
AND (@IndAcidTrab IS NULL OR LAUDO.T01101_I_INDACIDTRAB = 2)
AND (@IndDoenOcup IS NULL OR LAUDO.T01101_I_INDDOENTRAB = 2)
AND (@Cid IS NULL OR LEFT(LTS.T01135_S_CID1, LEN(@Cid)) LIKE @Cid)
AND (@NomeServidor IS NULL OR P.T01000_S_NOME LIKE '%' + @NomeServidor + '%')
ORDER BY LTS.T01135_D_DTEXAME
Pergunta
DiegoVix
Bom dia!!!!
estou precisando criar counts, um para a quantidade de laudos por servidores, e uma quantidade de laudos por secretarias
eu queria saber o que devo acrecentar ou retirar deste codigo
SELECT U.T01004_S_SIGLA AS Secretaria , S.T01001_I_MATRICULA AS Matrícula , P.T01000_S_NOME AS Nome , LTS.T01135_D_DTEXAME AS Exame , RH.fnDadosCarreiraCargo(S.T01002_I_CDENT, S.T01036_I_CDHIERARQ, 0) AS Cargo , LTRIM(RTRIM(T01135_S_CID1)) AS CID , ISNULL(DATEDIFF(DAY, LAUDO.T01101_D_DTININCAP, LAUDO.T01101_D_DTFIMINCAP) + 1, 0) AS [Dias] , PP.T01000_S_NOME AS Perito , CASE ISNULL(LAUDO.T01101_I_INDACIDTRAB, 0) WHEN 0 THEN '-' WHEN 1 THEN 'N' WHEN 2 THEN 'S' END AS AT , CASE ISNULL(LAUDO.T01101_I_INDDOENTRAB, 0) WHEN 0 THEN '-' WHEN 1 THEN 'N' WHEN 2 THEN 'S' END AS DO , ISNULL(LISTA_TPLAUDO.T01071_S_VALORSTR, LISTA_TPLAUDO_APOS.T01071_S_VALORSTR) AS Laudo , LISTA_TPCONCLUSAO.T01071_S_VALORSTR AS Conclusão , CAST(DATEDIFF("D",P.T01000_D_DTNASC,getdate())/365.25 AS INT) AS Idade FROM RH.T01135_LTS LTS LEFT JOIN RH.T01101_LAUDO LAUDO ON LAUDO.T01135_I_CDLTS = LTS.T01135_I_CDLTS AND LAUDO.T01135_I_ANO = LTS.T01135_I_ANO AND LAUDO.T01135_I_SEQUENCIA = LTS.T01135_I_SEQUENCIA AND LAUDO.T01135_I_TPDOC = LTS.T01135_I_TPDOC LEFT JOIN RH.T01260_REVISAOAPO APOS ON APOS.T01135_I_CDLTS = LTS.T01135_I_CDLTS AND APOS.T01135_I_ANO = LTS.T01135_I_ANO AND APOS.T01135_I_SEQUENCIA = LTS.T01135_I_SEQUENCIA AND APOS.T01135_I_TPDOC = LTS.T01135_I_TPDOC INNER JOIN RH.T01001_SERVIDOR S ON S.T01002_I_CDENT = LTS.T01002_I_CDENT AND S.T01001_I_MATRICULA = LTS.T01001_I_MATRICULA INNER JOIN RH.T01000_PESFISICA P ON P.T01000_I_CDPESFIS = S.T01000_I_CDPESFIS INNER JOIN RH.T01004_UNIDFUNC U ON U.T01002_I_CDENT = S.T01002_I_CDENT AND U.T01004_I_CDUNIDFUN = S.T01001_I_CDORGLOT AND U.T01004_I_VERSAO = S.T01001_I_VORGLOT LEFT JOIN RH.T01265_FUNCPERICIA PERITO ON PERITO.T01265_I_CDFUNCIONARIO = LTS.T01135_I_CDMEDPERITO LEFT JOIN RH.T01001_SERVIDOR SP ON SP.T01002_I_CDENT = PERITO.T01002_I_CDENT AND SP.T01001_I_MATRICULA = PERITO.T01001_I_MATRICULA LEFT JOIN RH.T01000_PESFISICA PP ON PP.T01000_I_CDPESFIS = SP.T01000_I_CDPESFIS LEFT JOIN RH.T01071_ITEMLISTA LISTA_TPLAUDO ON LISTA_TPLAUDO.T01071_I_CDITEM = LAUDO.T01101_I_TPLAUDO LEFT JOIN RH.T01071_ITEMLISTA LISTA_TPLAUDO_APOS ON LISTA_TPLAUDO_APOS.T01071_I_CDITEM = APOS.T01260_I_TPLAUDO LEFT JOIN RH.T01071_ITEMLISTA LISTA_TPCONCLUSAO ON LISTA_TPCONCLUSAO.T01071_I_CDITEM = LTS.T01135_I_TPCONCLUSAO WHERE LTS.T01135_I_TPDOC = 453 AND LTS.T01135_D_DTEXAME >= @DataIni AND LTS.T01135_D_DTEXAME <= @DataFim AND (@TipoLaudo IS NULL OR LAUDO.T01101_I_TPLAUDO = @TipoLaudo OR APOS.T01260_I_TPLAUDO = @TipoLaudo) AND (@TipoConclusao IS NULL OR LTS.T01135_I_TPCONCLUSAO = @TipoConclusao) AND (@MatriculaPerito IS NULL OR @MatriculaPerito = PERITO.T01001_I_MATRICULA) AND (@MatriculaServidor IS NULL OR @MatriculaServidor = S.T01001_I_MATRICULA) AND (@IndAcidTrab IS NULL OR LAUDO.T01101_I_INDACIDTRAB = 2) AND (@IndDoenOcup IS NULL OR LAUDO.T01101_I_INDDOENTRAB = 2) AND (@Cid IS NULL OR LEFT(LTS.T01135_S_CID1, LEN(@Cid)) LIKE @Cid) AND (@NomeServidor IS NULL OR P.T01000_S_NOME LIKE '%' + @NomeServidor + '%') ORDER BY LTS.T01135_D_DTEXAMEEditado por kuroiAdicionar tag CODE
Link para o comentário
Compartilhar em outros sites
2 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.