No SQL Server Management Studio, você pode usar o atalho CTRL + K > C
ou CTRL + K > U
comentar/descomentar linhas em massa.
Existe uma função de teclado semelhante que aplica aspas simples em uma lista de valores? Tenho 150 IDs que copiei de uma planilha do Excel e gostaria de executar uma consulta que usa uma cláusula IN nesta lista e não quero adicionar manualmente aspas simples e vírgulas em cada item.
Por exemplo:
SELECT * FROM tbl WHERE someValue IN (
ABC1
ABC2
ABC3
ABC4
)
Quero destacar os valores e, usando um atalho de teclado, transformar a lista em:
SELECT * FROM tbl WHERE someValue IN (
'ABC1',
'ABC2',
'ABC3',
'ABC4'
)
Abordagem de ferramentas nativas
Pegue uma cópia mais recente do Management Studio ( 2012 SP2 e 2014 são gratuitos, totalmente funcionais e podem coexistir com suas ferramentas 2008 R2). Então você pode fazer isso.
ABC
.'
.É sutil, mas você deve ver uma linha vertical azul fraca aqui, indicando que as teclas pressionadas afetarão todas as 4 linhas (ou 150 linhas).
Abordagem do Excel
Se você não quiser usar uma versão mais moderna do Management Studio, basta adicionar o material no Excel. Insira uma nova coluna, coloque uma aspa simples na primeira célula onde você deseja, passe o mouse sobre o canto inferior direito da célula até que o cursor se torne um sólido
+
e clique e arraste para o fundo:Repita para a segunda aspas simples, vírgulas, etc. Copie tudo, cole no SSMS e faça uma substituição rápida para
'<tab>
,<tab>',
, etc.Abordagem de expressão regular
Sua terceira alternativa é usar uma Expressão Regular, válida com todas as versões do SSMS
{.+}
'\1',
Essa expressão regular indica encontre tudo e lembre-se do que encontramos Substitua tudo o que encontramos
\1
envolvendo-o com marcas de tique e uma vírgulaSe você tiver requisitos mais complexos, a divisa à direita ao lado da seta suspensa em Localizar o que lista o dialeto de expressão regular que o SSMS/Visual Studio entende