Usuário com melhor resposta
Como repetir SELECT várias "n" vezes ? T-SQL

Pergunta
-
Respostas
-
Como assim, Samir? Este exemplo está meio estranho.
Pra que rodar um Select 'A' 3 vezes?? Qual o objetivo disso? É um Insert baseado num Select?
De qualquer forma, só pra adiantar, você pode usar o "go" especificando a quantidade de vezes que o batch deve rodar.
Exemplo:
Select 'B' go 5
Roberson Ferreira - Database Developer
Acesse: www.robersonferreira.com.br
Email: contato@robersonferreira.com.brSe esta sugestão for útil, por favor, classifique-a como útil.
Se ela lhe ajudar a resolver o problema, por favor, marque-a como Resposta.- Marcado como Resposta SamirMMBr segunda-feira, 8 de outubro de 2012 17:12
Todas as Respostas
-
Como assim, Samir? Este exemplo está meio estranho.
Pra que rodar um Select 'A' 3 vezes?? Qual o objetivo disso? É um Insert baseado num Select?
De qualquer forma, só pra adiantar, você pode usar o "go" especificando a quantidade de vezes que o batch deve rodar.
Exemplo:
Select 'B' go 5
Roberson Ferreira - Database Developer
Acesse: www.robersonferreira.com.br
Email: contato@robersonferreira.com.brSe esta sugestão for útil, por favor, classifique-a como útil.
Se ela lhe ajudar a resolver o problema, por favor, marque-a como Resposta.- Marcado como Resposta SamirMMBr segunda-feira, 8 de outubro de 2012 17:12
-
Samir,
Como assim, quantas vezes?
Talvez uma query dinâmica possa ajudar.
Pedro Antonio Galvão Junior [MVP | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | SorBR.Net | Professor Universitário | MSIT.com]
-
-
Sammir,
Sim, a partir do SQL Server 2005 é possível fazer uso do comando Go informando o número de linhas que gostaríamos de repetir.
Neste seu caso, você poderia criar uma Stored Procedure, utilizando como parâmetro variáveis que posteriormente seria utilizadas dentro da procedure fazendo com que o SQL Server repita a mesmo Select.
Observação:
<content xmlns="http://ddue.schemas.microsoft.com/authoring/2003/5">GO não é uma instrução Transact-SQL; é um comando reconhecido pelos
utilitários sqlcmd e osql e pelo Editor de Códigos do SQL Server
Management Studio.Os utilitários SQL Server interpretam GO como um sinal de que eles
devem enviar o lote atual de instruções Transact-SQL para uma instância do SQL
Server. O lote atual de instruções é composto de todas as instruções digitadas
desde o último GO, ou desde o início da sessão ad hoc ou script, se esse for o
primeiro GO.Uma instrução Transact-SQL não pode ocupar a mesma linha que um
comando GO. No entanto, a linha pode conter comentários.Os usuários precisam seguir as regras de lotes. Por exemplo,
</content>
qualquer execução de um procedimento armazenado depois da primeira instrução em um lote deve incluir a palavra-chave EXECUTE. O escopo de variáveis locais (definidas pelo usuário) é limitado a um lote e não pode ser referenciado após um comando GO.
Pedro Antonio Galvão Junior [MVP | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | SorBR.Net | Professor Universitário | MSIT.com]
- Editado Junior Galvão - MVPMVP segunda-feira, 8 de outubro de 2012 15:33