✒️ABAP El lenguaje SQL y la sentencia SELECT
ABAP El lenguaje SQL y la sentencia SELECT
SENTENCIA SELECT
Esta sentencia se utiliza para acceder a las bases de datos.
SINTAXIS:
SELECT <campos/*> FROM <tabla> INTO TABLE <destino> WHERE <condiciones>.
NOTA:
El * indica todos los campos de la tabla. Hay que evitar el uso de * cuando solo se quieren obtener unos campos en concreto de la tabla origen.
MODIFICADORES:
APPENDING nos permite conservar el contenido de la tabla y añadir nuevo.
SINTAXIS:
SELECT <campos/*> FROM <tabla> APPENDING <destino> WHERE <condición>.
SINGLE nos muestra la primera ocurrencia de nuestro select
SINTAXIS:
SELECT SINGLE <campo/*> FROM <tabla> INTO TABLE <destino> WHERE <condición>.
INTO CORRESPONDING FIELDS OF TABLE Para grabar el resultado de nuestro SELECT en una tabla que no tiene la misma estructura que la tabla.
SINTAXIS:
SELECT <campo/*> FROM <tabla> INTO CORRESPONDING FIELDS OF TABLE <tabla> WHERE <condición>.
NOTA: Realiza la comparación teniendo en cuenta los tipos de los campos de cada tabla y la posición de ellos. Si en la tabla A posición 1 hay un campo de tipo C en la tabla B posición 1 debe haber un campo de tipo C con la misma longitud para que la comparación sea correcta.
IN Se utiliza conjuntamente con WHERE para los select-options en las condiciones de un select.
SINTAXIS:
SELECT <campo/*> FROM <tabla> INTO TABLE <tabla> WHERE <campo> IN <select-option>.
MAX se utiliza para obtener el dato con valor más alto en el SELECT
SINTAXIS:
SELECT SINGLE MAX <campo/*> FROM <tabla> INTO TABLE <tabla> WHERE <condición>.
COUNT se utiliza para saber la cantidad de registro que cumplen una condición.
SINTAXIS:
SELECT COUNT(<campo/*>) FROM <tabla> INTO TABLE <tabla> WHERE <condición>.
FOR ALL ENTRIES IN se utiliza para obtener de una tabla todos los registros que existan en una tabla interna cargada de datos.
SINTAXIS:
SELECT <campo/*> FROM <tabla> INTO TABLE <tabla> FOR ALL ENTRIES IN <tabla> WHERE <condición>.
LIKE se utiliza para determinar patrones en el WHERE.
SINTAXIS:
SELECT <campo/*> FROM <tabla> INTO TABLE <tabla> WHERE <campo> LIKE <patrón>.
Es recomendable hacer un CLEAR y REFRESH de la tabla interna antes de realizar la selección, antes de la primero consulta SELECT.
Siempre después de un SELECT se debe consultar el SY-SUBRC para consultar el resultado de la operación y ver cómo seguir.
NOTA: Se pueden combinar algunos modificadores.
Al compilador ABAP no le importa el orden de INTO o FROM en el SELECT. Se puede poner INTO antes que FROM sin problema.
Se pueden utilizar variables en el INTO si la selección es de un solo campo y se utilizan modificadores como MAX o SINGLE.
SINTAXIS:
SELECT SINGLE <campo> FROM <tabla> INTO <variable> WHERE <condición>.
 
 
 
Sobre el autor
Publicación académica de Josep Antoni Lopez Moyano, en su ámbito de estudios para la Carrera Consultor ABAP.
Josep Antoni Lopez Moyano
Profesión: It Manager - España - Legajo: QP26P
✒️Autor de: 375 Publicaciones Académicas
🎓Egresado de los módulos:
- Carrera Consultor en SAP HCM Nivel Inicial
- Carrera Consultor Basis NetWeaver Nivel Avanzado
- Carrera Consultor Basis NetWeaver Nivel Inicial
- Máster Funcional ABAP
- Máster ABAP Orientado a Objetos
- Carrera Consultor ABAP Nivel Avanzado
- Carrera Consultor ABAP Nivel Inicial