Inquiridor
TOP 1

Discussão Geral
-
Galera preciso fazer um select que me retorna apenas o primeiro registro ordenado por ordem crescente.
Como faço para fazer um top(1) na query abaixo:
SELECT TOP (1) AGEND.ID_TAREFA ,AGEND.DT_HORA ,AGEND.ID_PERIODO ,PERIODO.TX_DESCRICAO AS PERIODO_DESCRICAO ,AGEND.ID_ACAO ,AGEND.FL_STATUS ,AGEND.NR_PREDECESSOR ,ACAO.TX_DESCRICAO AS ACAO_DESCRICAO ,ACAO.TX_PATH ,ACAO.TX_TIPO FROM dbo.TB_Agendamento_Tarefa AGEND INNER JOIN DBO.TB_Agendamento_Periodo PERIODO ON AGEND.id_periodo = PERIODO.id_periodo INNER JOIN DBO.TB_Agendamento_Acao ACAO ON ACAO.ID_ACAO = AGEND.ID_ACAO WHERE AGEND.FL_STATUS = 1 AND ACAO.TX_TIPO = 'CRAWLER' ORDER BY AGEND.NR_PREDECESSOR
Obrigado
SirSmart
- Tipo Alterado Marcos SJ sexta-feira, 29 de abril de 2016 18:33 How to
Todas as Respostas
-
-
Boa tarde,
Essa query que você postou deve ordenar as linhas pela coluna Agend.Nr_Predecessor de forma crescente e retornar apenas a primeira linha.
Não era esse o resultado esperado?
Assinatura: http://www.imoveisemexposicao.com.br
-
-
Pelo que vi a query que você postou retorna 10 campos.
Se você precisa de mais campos basta adiciona-los normalmente.
Assinatura: http://www.imoveisemexposicao.com.br
-
Sim, em relação a clausula SELECT, faz-se exatamente como vc fez.
o TOP é uma clausula opcional, antes dos campos... é em relação ao NUMERO de registros a serem retornados, e não tem relação com os campos do select...
Select top 1 * From.... por exemplo, é valido
Select top 20 Data, Descricao, Codigo From....
Select top 1 Data, * From....
Julio C.
-
SELECT TOP 1 AGEND.ID_TAREFA ,AGEND.DT_HORA ,AGEND.ID_PERIODO ,PERIODO.TX_DESCRICAO AS PERIODO_DESCRICAO ,AGEND.ID_ACAO ,AGEND.FL_STATUS ,AGEND.NR_PREDECESSOR ,ACAO.TX_DESCRICAO AS ACAO_DESCRICAO ,ACAO.TX_PATH ,ACAO.TX_TIPO FROM dbo.TB_Agendamento_Tarefa AGEND INNER JOIN DBO.TB_Agendamento_Periodo PERIODO ON AGEND.id_periodo = PERIODO.id_periodo INNER JOIN DBO.TB_Agendamento_Acao ACAO ON ACAO.ID_ACAO = AGEND.ID_ACAO WHERE AGEND.FL_STATUS = 1 AND ACAO.TX_TIPO = 'CRAWLER' ORDER BY AGEND.NR_PREDECESSOR asc
caso não de certo verifique o inner join