✒️ABAP / El lenguaje SQL y la sentencia SELECT Por Carlos Carreira

Selector Alummnos / Empresas

ABAP El lenguaje SQL y la sentencia SELECT

ABAP El lenguaje SQL y la sentencia SELECT

iNSTRUCCIONES SQL

Sentencia SQL

conjunto de sentencias que se utilizan para accedera a las bases de datos.

La sintaxis es:

SELECT <resultado> "En resultado se colocan los campos que se quieren recuperar, si dejamos un asterisco recuperamos todos los campos.

FROM <tabla> " Tabla es la tabla origen donde se sacaran los datos

INTO <target> " Target es el destino donde será alojados los datos

WHERE <condiciones> "Condiciones de la búsqueda

Para obtener todos los registros de la tabla usuarios seria lo siguiente

SELECT *

FROM ZTABLA_USUARIOS

INTO TABLE ti_usuarios.

Donde TI_USUARIOS es una tabla interna del mismo tipo de la tabla ZTABLA_USUARIOS. en caso de existir registros de la tabla ZTABLA_USUARIOS en la tabla interna estos se pisarán. puede que queramos conservar el contenido de la tabla TI_USUARIOS en esta caso tendriamos que usar la cláusula APPENDING TABLE en lugar de INTO TABLE.

Recomendación: es hacer CLEAR Y REFRESH de la tabla interna antes de realizar la selección.

Si quisieramos obtener el campo DNI de la tabla deberiamos crear una tabla auziliar solo con el campo DNI para alojar el resultado de la consulta.

Ejemplo:

SELECT dni

FROM ztabla_usuarios

INTO TABLE ti_usuarios-aux.

Importante: Siempre despues de un SELECT se debe preguntar por el SY_SUBRC para saber como proseguir.

Si quisieramos obtener la primera ocurrencia de la ZTABLA_USUARIOS donde se cumpla determinada condicion debemos usar la clausula SINGLE

ejemplo

* Selecciono el primer registro que cumpla la condicion

CLEAR wa_usuarios.

SELECT SINGLE *

FROM ztabla_usuarios

INTO wa_usuarios

WHERE nombre_ape NE space.

El resultado se guardará en la estructura wa_usuarios que es del mismo tipo que la tabla ztabla_usuarios

SINGLE ; es una clausula de SELECT prduce que solo se seleccione la primera ocurrencia que cumpla las condiciones de seleccion.

Ahora si quiesieromhacer la misma consulta pero solo obtener el campo DNI entonces no necesitamos la estructura wa-usuarios sino que se guardaria el resultado en una variable v-dni

* Selecciono el primer registro que cumpla la condicion

CLEAR v_dni.

SELECT SINGLE dni

FROM ztabla_usuarios

INTO v_dni

WHERE nombre_ape NE space.

Si quisieramos obtener los registros que cumplan una condicion pero queremos guardarlos en una abla interna que no tiene la misma estructura que la tabla, entonces tenemos que usar la cláusula INTO CORRESPONDING FIELDS OF TABLE

* Selecciono el primer registro que cumpla la condicion

SELECT nombre_ape estado_usu

FROM ztabla_usuarios

INTO CORRESPONDIG FIELDS OF TABLE ti_usuarios2

WHERE nombre_ape NE space

AND estado_usu = 'A' .

Audio tips; la posición del campo en la tabla ZTABLA_USUARIOS está en pos 1 y es un tipo char de 4 ,en la tabla interna ti_usuarios2 tambien tendrá la misma posción y tipo de dato.

En el ejemplo anterior la tabla TI_USUARIOS2 está compuesta por los campos nombre-ape y estado_usu.

Suponemos que tenemos un reporte que tiene la pantalla de seleccion;

Nombre y Apellido es el parameter y

Estado Usuario es el select options S_ESTADO. Si quisieramos haer una seleccion a la tabla en base a lo que los usuarios ingresan por pantalla hariamos lo siguiente:

* Selecciono los registeros que cumplan con los parámetros de pantalla

SELECT *

FROM ztabla_usuarios

INTO TABLE ti_usuarios

WHERE nombre_ape = p_nomape

AND estado_usu IN s_estado.

La clausula IN se utiliza para los select-options en las condiciones de un SELECT

Ahora si quisieramos obtener el usuario activo con DNI mas lato tendriamos que usar la clausula MAX

* Obtengo el usuario activo con DNI mas alto

SELECT SINGLE MAX (dni)

INTO v_dni

FROM ztabla_usuarios

WHERE estado_usu = 'A' .

AUDIO TIPS:

Cuando creemos la sentencia SELECT para el compilador ABAp si colocamos primero FROM y luego INTO o al revés.

Si quisieramos saber la cantidad de usuarios con estado ='activo" debemos usar la clausula COUNT;

Ejemplo

* Obtengo la cantidad de usuaruios activos

SELECT COUNT (*)

INTO v_activos

FROM ztabla_usuarios

WHERE estado_usu = 'A'.

Si quisieramos obtenerde una tabla para todos los registros que existan en una tabla interna cargada con datos, entonces usemos la sentencia FOR ALL ENTRIES IN que nos permite especificar condiciones en tiempo de ejecución.

Ejemplo

* Obtengo los registros de los usuarios que existan en la tabla interna TI_PROVEEDORES

SELECT *

INTO TABLE ti_usuarios

FROM ztabla_usuarios

FOR ALL ENTRIES IN ti_proveedores

WHERE dni = ti_Proveedores -dni.

Audio Tips:

Con FOR ALL ENTRIES lo que hacemos es seleccionar todos los registros de la tabla ztabla_usuarios que se encuentran en la tabla interna ti_proveedores siendo que el campo dni sea igual en ambas tabla y almacenamos las coincidencias en la tabla interna ti_usuarios. Esto mismo se podría realizar recorriendo la tabla interna ti_proveedores con un LOOP AT y por cada registro de esta tabla interna realizaríamos un SELECT a la tabla ztabla_usuarios, pero debemos tener en cuenta la performance de los programas que realizamos ya que si la tabla interna ti_proveedores almacena solo tres registros entonces al ejecutar nuestro programa estariamos accediendo a la base de datos solo tres veces, pero si la tabla interna ti_proveedores almacena cien mil registros entonces al ejecutar nuestro programa estariamos accediendo a la base de datos cien mil veces y esto produciría u tiempo de espera enorme. Para evitar estas situaciones nos aseguramos de acceder una sola vez a la base de datos usando FOR ALL ENTRIES.

Si quisieramos obtener todos los registros que cumplan con unpatrón de text en alguno de sus campos debemos utilizar la sentencia LIKE

Ejemplo

* Recupero los usuarios cuyo nombre empeice con "A"

SELECT *

FROM ztabla_usuarios

INTO TABLE ti_usuarios

WHERE nombre_ape LIKE 'A%'.


 

Escanear / Compartir

 

 


Sobre el autor

Publicación académica de Carlos Alberto Carreira, en su ámbito de estudios para la Carrera Consultor ABAP Nivel Inicial.

SAP Master

Carlos Alberto Carreira

Profesión: Consultor Técnico en Jde W.s. - Argentina - Legajo: KC15G

✒️Autor de: 92 Publicaciones Académicas

🎓Cursando Actualmente: Carrera Consultor ABAP Nivel Inicial

🎓Egresado de los módulos:

Certificación Académica de Carlos Carreira

✒️+Comunidad Académica CVOSOFT

Continúe aprendiendo sobre el tema "El lenguaje SQL y la sentencia SELECT" de la mano de nuestros alumnos.

SAP Junior

El acceso a la base de datos es el factor número uno que define si un programa ABAP vuela o se arrastra. Como programador experto, tu objetivo principal siempre debe ser delegar el trabajo pesado al motor de la base de datos y minimizar el tráfico de red entre este y el servidor de aplicaciones. En el mundo moderno de SAP (especialmente con bases de datos in-memory como HANA), el paradigma es "Code-to-Data": envía la lógica a los datos, no los datos a la lógica. A continuación, desglosamos las prácticas que debes erradicar y las que debes adoptar en tu día a día. Las Peores Prácticas (Anti-patrones de Rendimiento) 1. El pecado capital: SELECT dentro de un LOOP Esta...

Acceder a esta publicación

Creado y Compartido por: Mauro Repetto

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Expert


1. El Lenguaje SQL (Structured Query Language) Es un lenguaje de consulta estructurado utilizado como interfaz para comunicarse con las bases de datos y realizar operaciones de acceso y manipulación de la información. Estándar y Variaciones: Aunque es un estándar mantenido por ANSI, cada sistema de gestión (como Oracle o SAP HANA) puede tener sus propias extensiones propietarias,. Clasificación de sentencias: DDL (Lenguaje de Definición de Datos): Se utiliza para definir la estructura de la base de datos (tablas, índices, etc.). Incluye sentencias como CREATE, ALTER y DROP,. DML (Lenguaje de Manipulación de Datos): Permite manipular los datos (consultar,...

Acceder a esta publicación

Creado y Compartido por: Gabriel José Luces González

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

El lenguaje SQL y la sentencia SELECT 1| El lenguaje SQL Para acceder y manipular los datos que se encuentran almacenados en las tablas de la base de datos centralizada de SAP vamos a utilizar el lenguaje SQL. SQL Sus siglas significan Lenguaje de Consulta Estructurado. Es un lenguaje de consulta, usado como interfaz para comunicarse con bases de datos y realizar operaciones de acceso y manipulación de la información almacenada. Es un lenguaje sencillo de consulta, que permite realizar operaciones de selección, inserción, actualización y borrado de datos, así como operaciones administrativas sobre las bases de datos. Tiene la capacidad de hacer cálculos avanzados y álgebra. Es utilizado...

Acceder a esta publicación

Creado y Compartido por: Felipe De Jesus Arrona Rodriguez

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master


El lenguaje SQL y la sentencia SELECT SQL es un lenguaje de consulta estructurado usado como interfaz para comunicarse con bases de datos, permitiendo operaciones de selección, inserción, actualización y borrado de datos, además de tareas administrativas. Permite hacer cálculos avanzados y álgebra. Es el lenguaje de programación más usado para bases de datos relacionales y está estandarizado por ANSI. Sistemas gestores de base de datos comunes que usan SQL incluyen Oracle, SAP HANA, MySQL, Microsoft SQL Server, Microsoft Access, e Ingres. Aunque SQL es estándar, cada sistema puede tener sus propias extensiones propietarias. El conocimiento de SQL básico facilita trabajar...

Acceder a esta publicación

Creado y Compartido por: Juan Ignacio Romero

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

SQL Sus siglas significan Lenguaje de Consulta Estructurado. Es un lenguaje de consulta, usado como interfaz para comunicarse con bases de datos y realizar operaciones de acceso y manipulación de la información almacenada. Es un lenguaje sencillo de consulta, que permite realizar operaciones de selección, inserción, actualización y borrado de datos, así como operaciones administrativas sobre las bases de datos. Tiene la capacidad de hacer cálculos avanzados y álgebra. Es utilizado en la mayoría de las empresas que almacenan datos en una base de datos. Ha sido y sigue siendo el lenguaje de programación más usado para bases de datos relacionales. El lenguaje SQL es...

Acceder a esta publicación

Creado y Compartido por: Mara Fadua Romero Hernandez

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

Introducción: SQL es el lenguaje universal para gestionar datos en bases relacionales. En SAP ABAP, dominar sus sentencias (especialmente SELECT) es crucial para acceder, filtrar y manipular información eficientemente. Fundamentos de SQL en ABAP Clasificación de sentencias: Tipo Siglas Función Comandos Clave DDL Lenguaje de Definición de Datos Crear/modificar estructuras CREATE, ALTER, DROP DML Lenguaje de Manipulación de Datos Gestionar registros ...

Acceder a esta publicación

Creado y Compartido por: Oscar Aravena Muller / Disponibilidad Laboral: FullTime

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Junior

El lenguaje SQL Y la sentencia SELECT 1 | El lenguaje SQL Para acceder y manipular los datos que se encuentran almacenados en las tablas de la base de datos centralizada de SAP vamos a utilizar el lenguaje SQL. SQL Sus siglas significan Lenguaje de Consulta Estructurado. Es un lenguaje de consulta, usado como interfaz para comunicarse con bases de datos y realizar operaciones de acceso y manipulación de la información almacenada. Es un lenguaje sencillo de consulta, que permite realizar operaciones de selección, inserción, actualización y borrado de datos, así como operaciones administrativas sobre las bases de datos. Tiene la capacidad de hacer cálculos avanzados y álgebra Es utilizado...

Acceder a esta publicación

Creado y Compartido por: Gustavo Jose Rondon Hernandez / Disponibilidad Laboral: FullTime + Carta Presentación

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Expert


El lengaje SQL y la sentencia SELECT 1 El leguaje SQL Es el estándar utilizado para acceder, manipular y administrar datos almacenados en bases de datos relacionales. En SAP, este lenguaje es fundamental para interactuar con las tablas de la base de datos centralizada. Características principales: Permite realizar operaciones de: Selección (SELECT) Inserción (INSERT) Actualización (UPDATE / MODIFY) Borrado (DELETE) Administración de estructuras (CREATE, ALTER, DROP) SQL es mantenido como estándar por ANSI, lo que garantiza similitudes...

Acceder a esta publicación

Creado y Compartido por: Geovanny Martínez Campoverde

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Expert



El lenguaje SQL y la sentencia SELECT en ABAP En el entorno de programación ABAP (Advanced Business Application Programming), el lenguaje SQL se utiliza para interactuar con bases de datos SAP mediante sentencias conocidas como Open SQL. Estas sentencias permiten acceder y manipular datos de forma independiente del sistema de base de datos subyacente. Una de las sentencias más utilizadas es SELECT, que permite leer registros desde una o más tablas de base de datos. En ABAP, la sentencia SELECT puede usarse para recuperar datos en estructuras o tablas internas, facilitando el procesamiento posterior en el programa. Es posible aplicar condiciones con cláusulas como WHERE, ordenar resultados con ORDER BY, o limitar...

Acceder a esta publicación

Creado y Compartido por: David Ibarra / Disponibilidad Laboral: FullTime + Carta Presentación

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

El lenguaje SQL y la sentencia SELECT 1. El lenguaje SQL Para acceder y manupular los datos que se encuentran almacenados en las tablas de la base de datos centralizada de SAP vamos a utilizar el lenguaje SQL. < SQL: Lenguaje de Consulta Estructurado. Es un lenguaje de consulta, usado como interfaz para comunicarse con bases de datos y realizar operaciones de acceso y manipulación de la información almacenada. > Las sentencias del lenguaje SQL pueden ser clasificadas en tre grupos que son los siguientes: Lenguaje de Definición de Datos (DDL): Se utiliza para definir estructuras como el esquema, la base de datos, las tablas de la base de datos, las restricciones, etc. * CREATE: Se utiliza para crear una base de...

Acceder a esta publicación

Creado y Compartido por: Yeny Gisela Yanes Bautista

 


 

👌Genial!, estos fueron los últimos artículos sobre más de 99.000 publicaciones académicas abiertas, libres y gratuitas compartidas con la comunidad, para acceder a ellas le dejamos el enlace a CVOPEN ACADEMY.

🔎Buscador de Publicaciones:

 


 

No sea Juan... Solo podrá llegar alto si realiza su formación con los mejores!