Usuário com melhor resposta
Dúvida - inserir aspas simples

Pergunta
-
Olá pessoal.
tenho a seguinte situação:
DECLARE @CATEGORIA NVARCHAR(MAX) = '1.000.000.00.00,1.200.000.00.00,1.300.000.00.00'
E gostaria de colocar aspas simples para poder usar na clausula IN
Para ficar assim: select * from categoria where codCategoria IN('1.000.000.00.00','1.200.000.00.00','1.300.000.00.00')
Respostas
-
Ok.
Você pode trabalhar com SQL Dinâmico como no exemplo abaixo, mas isso deve ser usado com cuidado por causa do SQL Injection.DECLARE @CATEGORIA NVARCHAR(MAX) = '''1.000.000.00.00'',''1.200.000.00.00'',''1.300.000.00.00''' DECLARE @Comando VARCHAR(1000) SET @Comando = 'select * from categoria where codCategoria IN(' + @categoria +')' exec(@comando)
Mariana Del Nero /* Se a resposta foi útil, não esqueça de marcá-la */
- Sugerido como Resposta Durval RamosModerator sexta-feira, 6 de fevereiro de 2015 13:38
- Marcado como Resposta Ricardo Barbosa Cortes segunda-feira, 9 de fevereiro de 2015 13:47
Todas as Respostas
-
Olá Junior,
Para inserir aspas no conteúdo da sua variável, tente isso:
DECLARE @CATEGORIA NVARCHAR(MAX) = '''1.000.000.00.00'',''1.200.000.00.00'',''1.300.000.00.00'''
Espero que ajude!
Mariana Del Nero /* Se a resposta foi útil, não esqueça de marcá-la */
-
é porque a variavel @categoria é um parametro de entrada de uma proc, e recebe as categorias dessa forma: @categoria = '1.000.000.00.00,1.200.000.00.00,1.300.000.00.00'
e eu preciso transformar de tal amneira que no IN fique:
IN(@categoria), ou seja, IN('1.000.000.00.00','1.200.000.00.00','1.300.000.00.00')
-
Ok.
Você pode trabalhar com SQL Dinâmico como no exemplo abaixo, mas isso deve ser usado com cuidado por causa do SQL Injection.DECLARE @CATEGORIA NVARCHAR(MAX) = '''1.000.000.00.00'',''1.200.000.00.00'',''1.300.000.00.00''' DECLARE @Comando VARCHAR(1000) SET @Comando = 'select * from categoria where codCategoria IN(' + @categoria +')' exec(@comando)
Mariana Del Nero /* Se a resposta foi útil, não esqueça de marcá-la */
- Sugerido como Resposta Durval RamosModerator sexta-feira, 6 de fevereiro de 2015 13:38
- Marcado como Resposta Ricardo Barbosa Cortes segunda-feira, 9 de fevereiro de 2015 13:47
-
-
-
-
Bom dia J Junior,
Marquei como resposta a sugestão da Mariana, pois parece ter atendido a sua solicitação. Caso ainda esteja com o problema, desmarque como resposta que continuaremos ajudando ok?
Obrigado,
Abraço!
Ricardo Cortes Microsoft Contingent Staff
Esse contedo e fornecido sem garantias de qualquer tipo, seja expressa ou implicita.
MSDN Community Support
-
Boa tarde,
Para inserir aspas simples na coluna codCategoria podemos utilizar a função Replicate, ficaria assim:
select Replicate ( '''', 1) +codCategoria+Replicate ( '''', 1) +Replicate ( ',', 1) from categoria
- Sugerido como Resposta Junior Galvão - MVPMVP terça-feira, 20 de agosto de 2019 18:51