SQL Server - determinar caracteres iguales que tienen dos cadenas

   
Vista:

determinar caracteres iguales que tienen dos cadenas

Publicado por Meryrg (1 intervención) el 08/01/2013 23:34:00
Hola!!


Cómo puedo determinar el número de caracteres iguales que tienen dos cadenas, teniendo en cuenta que deben estar en la misma posición?

Ejemplo:

GASL811214
GASL811215

En ese ejemplo el resultado debería ser 10

GESA811214
GASL811215

En este otro ejemplo el resultado debería darme 7 que sería la G,S,8,1,1,2 y 1


Espero haberme explicado y gracias de antemano
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Isaias

determinar caracteres iguales que tienen dos cadenas

Publicado por Isaias (3180 intervenciones) el 09/01/2013 01:10:48
En su primer ejemplo no son 10, si no 9, como resultado, debe crear una funcion de usuario que haga el SPLIT para cada caracter

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
CREATE FUNCTION dbo.Split
(
@CharIN1 nvarchar(50),
@CharIN2 nvarchar(50)
)
RETURNS int
AS
 BEGIN
  DECLARE @Contador int
  SET @Contador = 0
  WHILE LEN (@CharIN1) >= 1
   BEGIN
    IF LEFT(@CharIN1, 1) = LEFT(@CharIN2, 1)
     SET @Contador = @Contador + 1
	SET @CharIN1 = SUBSTRING(@CharIN1, 2, LEN(@CharIN1))
	SET @CharIN2 = SUBSTRING(@CharIN2, 2, LEN(@CharIN2))
	CONTINUE
   END
   RETURN @Contador
 END
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar