Fórum Comando SQL #25465
17/07/2008
0
Gente, desculpe, mas não achei uma área específica de SQL, então estou colocando aki pra ver se alguém pode me ajudar.
Gostaria de sabe se tem como eu fazer um comando SQL, utilizando algum comando parecido com o TRIM do Delphi.
Seria mais ou menos assim:
UPDATE TabCli
SET NomeFantasia=NomedoCliente
Where Trim(NomedoCliente) <> ´´
Uma outra opção, se existir, seria testar se a primeira letra do campo NomedoCliente eh uma letra por exemplo.
Porque preciso disso? Porque tenho uma tabela no banco de dados que o campo NomedoCliente tem alguma sujeira gravada só que não consigo ver que caracter que foi gravado nele.
Se esse comando não existir, aí vou ter que fazer uma rotina pra limpar o campo, alguma coisa nesse sentido.
Obrigado,
Marcos.
Gostaria de sabe se tem como eu fazer um comando SQL, utilizando algum comando parecido com o TRIM do Delphi.
Seria mais ou menos assim:
UPDATE TabCli
SET NomeFantasia=NomedoCliente
Where Trim(NomedoCliente) <> ´´
Uma outra opção, se existir, seria testar se a primeira letra do campo NomedoCliente eh uma letra por exemplo.
Porque preciso disso? Porque tenho uma tabela no banco de dados que o campo NomedoCliente tem alguma sujeira gravada só que não consigo ver que caracter que foi gravado nele.
Se esse comando não existir, aí vou ter que fazer uma rotina pra limpar o campo, alguma coisa nesse sentido.
Obrigado,
Marcos.
Marcosbrunato
Curtir tópico
+ 0
Responder
Posts
17/07/2008
Vitor Alcantara
No SQL Server existe as funções LTRIM E RTRIM, onde LTRIM verifica limpa caracteres em branco a esquerda e o RTRIM a direita.
No Firebird tem a função TRIM que limpa caracteres em branco tanto a direita como a esquerda.
Quanto a verificar o primeiro caractere é uma letra você pode utilizar a função do SQL Server ASCII mesclado com a função SUBSTRING
Ex:
PS: as letras ´A´ a ´Z´ equivalem aos números de 65 a 90,
já as letras ´a´ a ´z´ equivalem aos números ´97´ a ´122´
No Firebird tem a função TRIM que limpa caracteres em branco tanto a direita como a esquerda.
Quanto a verificar o primeiro caractere é uma letra você pode utilizar a função do SQL Server ASCII mesclado com a função SUBSTRING
Ex:
DECLARE @TEXTO VARCHAR(255) SET @TEXTO = ´¿MACARRÃO´ SELECT CASE WHEN ((ASCII(SUBSTRING(@TEXTO,1,1)) >= 65) AND (ASCII(SUBSTRING(@TEXTO,1,1))<= 90)) OR ((ASCII(SUBSTRING(@TEXTO,1,1)) >= 97) AND (ASCII(SUBSTRING(@TEXTO,1,1))<= 122)) THEN ´LETRA´ ELSE ´NÃO´ END
PS: as letras ´A´ a ´Z´ equivalem aos números de 65 a 90,
já as letras ´a´ a ´z´ equivalem aos números ´97´ a ´122´
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)