sql - primera - respetar mayusculas y minusculas abap
Oracle-Seleccione donde el campo tiene caracteres en minĂºsculas (5)
Creo que el SQL de BQ y el segundo SQL de Justin funcionarán, porque en este escenario:
first_name last_name
---------- ---------
bob johnson
Bob Johnson
BOB JOHNSON
Quiero que mi consulta devuelva las primeras 2 filas.
Pero me gustaría asegurarme de que esta sea una consulta eficiente: mi tabla tiene 500 millones de filas.
Cuando dices upper (first_name)! = First_name, ¿"first_name" pertenece siempre a la fila actual que Oracle está mirando? Al principio tenía miedo de usar este método porque temía terminar uniéndome a esta tabla, pero de la forma en que ambos escribieron el SQL, parece que la verificación de igualdad solo funciona fila por fila, lo cual me funcionaría
Tengo una tabla, usuarios, en una base de datos Oracle 9.2.0.6. Dos de los campos son varchar - last_name y first_name.
Cuando se insertan filas en esta tabla, se supone que los campos de nombre y apellido están en mayúsculas, pero de alguna manera algunos valores en estos dos campos son mayúsculas y minúsculas.
Quiero ejecutar una consulta que me muestre todas las filas de la tabla que tienen nombre o apellido con letras minúsculas.
Busqué en la red y encontré REGEXP_LIKE, pero debe ser para versiones más nuevas de Oracle, no parece funcionar para mí.
Otra cosa que intenté fue traducir "abcde ... z" a "$$$$$ ... $" y luego buscar un ''$'' en mi campo, ¿pero tiene que haber una forma mejor?
¡Gracias por adelantado!
Qué tal esto:
select id, first, last from mytable
where first != upper(first) or last != upper(last);
SELECT *
FROM mytable
WHERE FIRST_NAME IN (SELECT FIRST_NAME
FROM MY_TABLE
MINUS
SELECT UPPER(FIRST_NAME)
FROM MY_TABLE )
para el servidor SQL donde la configuración de intercalación de DB es insensible a las mayúsculas y minúsculas, use lo siguiente:
SELECT * FROM tbl_user WHERE LEFT(username,1) COLLATE Latin1_General_CS_AI <> UPPER(LEFT(username,1))
Si está buscando Oracle 10g o superior, puede usar el siguiente ejemplo. Considere que necesita encontrar las filas donde la letra de una columna es minúscula.
Column1
.......
MISS
miss
MiSS
En el ejemplo anterior, si necesita encontrar los valores miss
y MiSS
, entonces podría usar la consulta siguiente
SELECT * FROM YOU_TABLE WHERE REGEXP_LIKE(COLUMN1,''[a-z]'');