Boa Tarde,
Primeiro acho que podemos fazer um trabalho de enxugar o seu código. Ex:
Code Snippet
SELECT
DISTINCT Dad.TBDadosFatura_Numero, Dad.TBDadosFatura_Nome, Dad.TBDadosFatura_DataEntrada, Hon.TBAmb_Descricao, Dad.TBDadosFatura_ValorTotal
FROM
TBDadosFatura Dad
INNER
JOIN TBLHonorarios Hon ON Dad.GuiaNumero = Hon.GuiaNumero
WHERE
(Hon.TBCentroCusto_Codigo IN (
'0100003'
,'0100062','0100064','0100031','0100032','0100028',
'0100008'
,'0100020','0100053','0100054','0100055') )
AND
(Dad.TBDadosFatura_DataEntrada >= '20081101'
AND
Dad.TBDadosFatura_DataEntrada <= '20081130')
ORDER
BY Dad.TBDadosFatura_Numero ASC, Dad.TBDadosFatura_DataEntrada ASC
Posteriormente para retornar o primeiro cadastrado, é necessário o MIN.
Code Snippet
SELECT
Dad.TBDadosFatura_Numero, Dad.TBDadosFatura_Nome, Dad.TBDadosFatura_DataEntrada,
MIN
(Hon.TBAmb_Descricao), Dad.TBDadosFatura_ValorTotal
FROM
TBDadosFatura Dad
INNER
JOIN TBLHonorarios Hon ON Dad.GuiaNumero = Hon.GuiaNumero
WHERE
(Hon.TBCentroCusto_Codigo IN (
'0100003'
,'0100062','0100064','0100031','0100032','0100028',
'0100008'
,'0100020','0100053','0100054','0100055') )
AND
(Dad.TBDadosFatura_DataEntrada >= '20081101'
AND
Dad.TBDadosFatura_DataEntrada <= '20081130')
GROUP
BY Dad.TBDadosFatura_Numero, Dad.TBDadosFatura_Nome, Dad.TBDadosFatura_DataEntrada, Dad.TBDadosFatura_ValorTotal
ORDER
BY Dad.TBDadosFatura_Numero ASC, Dad.TBDadosFatura_DataEntrada ASC
[ ]s,
Gustavo