SQL Server - Contar frases en mayúscula

 
Vista:
sin imagen de perfil

Contar frases en mayúscula

Publicado por Simonet (2 intervenciones) el 17/06/2016 13:12:25
Hola a todos,

En la columna de una tabla tengo frases en minúscula y frases en mayúscula. ¿Cómo puedo contar las que estac completamente en mayúscula?

Gracias,
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
sin imagen de perfil

Contar frases en mayúscula

Publicado por Simonet (2 intervenciones) el 20/06/2016 10:33:39
Hola Isaías,

Como bien sabes SQL Server no es case sensitive, es decir, no distingue minúsculas de mayúsculas. Por tant si tu haces la búsqueda:

SELECT @titulo LIKE '%HOLA%' FROM @tabla

te reportarà

1-HOLA
2-Hola
3-HoLa

Pero si sólo quieres saber los que estan escritos enteramente en mayúscula no hay forma de distinguirlo.

Bien, una manera de solucionar esto es cambiar el collate del campo de datos a case sensitive.

Entonces la BBDD ya encuentra mayúsculas. Pero lo que yo quiero es distinguir en el camp título aquellos títulos que estan completamente en
mayúscula para diferenciarlos de los que están en minúscula (más de 11.000 registros), teniendo en cuenta que son textos diferentes.

Alguna idea?
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
sin imagen de perfil
Val: 9
Ha disminuido su posición en 8 puestos en SQL Server (en relación al último mes)
Gráfica de SQL Server

Contar frases en mayúscula

Publicado por Hugo QN (19 intervenciones) el 22/06/2016 21:09:04
Hola Simonet.

usa la función ASCII() de la BD para identificar.
Mayúsculas: de 65 a 90
Minúsculas: de 97 a 122
Números: 48 a 57

Ejemplo:
SELECT ASCII('0'), ASCII('A'), ASCII('a')

pero ¿cual es el fin de identificar si es mayúscula o no?
si sólo es para hacer la busqueda usa las funiones LOWER() ó UPPER()

SELECT * FROM @tabla WHERE UPPER(@titulo) LIKE '%HOLA%'

espero te sirva.

no vendria mal un +1
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