✒️ABAP / El lenguaje SQL y la sentencia SELECT Por Yeny Yanes Bautista

Selector Alummnos / Empresas

ABAP El lenguaje SQL y la sentencia SELECT

ABAP El lenguaje SQL y la sentencia SELECT

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 datos, tablas bases de datos, vistas, etc.

* ALTER: Se utiliza para modificar la estructura de la base de datos, por ejemplo añadir o borrar columnas de una tabla base de datos.

* DROP: Con esta sentencia podemos eliminar los objetos de la estructura por ejemplo: un índice o una secuencia.

Lenguaje de Manipulación de Datos (DML): Permite a los usuarios introducir datos para posteriormente realizar tareas de consultas o modificación de los datos que contienen las bases de datos.

* SELECT: Esta sentencia se utiliza para realizar consultas sobre los datos

* INSERT: Con esta sentencia podemos insertar los valores en una tabla base de datos

* UPDATE: Se utiliza para modificar los valores de uno o varios registros

* MODIFY: Se utiliza para modificar los valores de uno o varios registros

* DELETE: Se utiliza para eliminar las filas de una tabla base de datos.

Lenguaje de Control de Datos (DCL): Permiten al administrador del sistema gestor de base de datos, controlar el acceso a los objetos, es decir, podemos otorgar o denegar permisos a uno o más roles para realizar determinadas tareas.

* GRANT: Permite otorgar permisos

* REVOKE: Elimina los permisos que previamente se han concedido.

2. La sentencia SELECT

< La sentencia SELECT se utiliza para recuperar información en SQL, es decir, permite obtener registros de la base de datos de una o varias tablas combinadas. Ademas permite hacer filtrados de la informacion para obtener unicamente los registros que cumplen ciertas condiciones. >

En ABAP la sentencia select tiene la siguiente sintaxis:

SELECT <resultado> "En resultado se colocan los campos que se desean recuperar

FROM <tabla> "Es la tabla base de datos de donde se sacan los datos

INTO <target> "Es el destino donde serán alojados los datos

WHERE <condiciones> "Condiciones de la búsqueda

2.1 SELECT * INTO TABLE

* Seleccionamos todos los registros SELECT * FROM ztabla_usuarios INTO TABLE ti_usuarios.

La claúsula INTO TABLE se utiliza cuando el resultado de la consulta se guarda en una tabla interna

2.2 SELECT * APPENDING TABLE

Podría ocurrir que quisiérmoas conservar el contenido de la tabla interna TI_USUARIOS luego de reiteradas selecciones

* Seleccionamos todos los registros SELECT * FROM ztabla_usuarios APPENDING TABLE ti_usuarios.

2.3 SELECT campo1

Si quisieramos obtener de todos los campos de la tabla ztabla_usuarios el campo DNI deberíamos crear una tabla auxiliar solo con el campo DNI para alojar el resultado de la consulta

* Seleccionamos el campo DNI de todos los registros SELECT dni FROM ztabla_usuarios INTO TABLE ti_usuarios_aux.

Siempre despues de un SELECT se debe preguntar por el SY-SUBRC para saber cómo proseguir

Si quisieramos obtener 2 campos de la tabla base de datos ztabla_usuarios entonces debemos escribir luego de la sentencia select el nombre de los campos, en el mismo orden en el que dichos campos se encuentran en la tabla base de datos:

* Seleccionamos el nombre y apellido y el estado del usuario de todos los registros SELECT nombre_ape estado_usu FROM ztabla_usuarios INTO TABLE ti_usuarios2.

2.4 SELECT SINGLE

Si quisiéramos obtener la primera ocurrencia de la tabla ztabla_usuarios donde se cumpla determinada condición debemos ejecutar un SELECT SINGLE *:

* Seleccionamos el primer registro que cumpla la condición CLEAR wa_usuarios. SELECT SINGLE * FROM ztabla_usuarios INTO wa_usuarios WHERE nombre_ape NE space.

El resultado de esta consulta será guardado en la estructura wa_usuarios que es del mismo tipo que la tabla ztabla_usuarios

Si quisiéramos realizar la misma consulta anterior pero necesitamos obtener solo el campo DNI entonces ya no será necesaria la estructura wa_usuarios sino que guardaríamos el resultado en la variable V_DNI_

* Seleccionamos el primer registro que cumpla la condición CLEAR v_dni. SELECT SINGLE dni FROM ztabla_usuarios INTO v_dni WHERE nombre_ape NE space.

2.5 SELECT INTO CORRESPONDING FIELDS OF TABLE

Si quisiéramos obtener de una tabla base de datos los registros que cumplan una condición pero deseamos guardarlos en una tabla interna que no tiene la misma estructura que la tabla base de datos entonces tenemos que usar la cláusula INTO CORRESPONDING FIELDS OF TABLE:

* Seleccionamos los registros que cumpla la condición SELECT nombre_ape estado_usu FROM ztabla_usuarios INTO CORRESPONDING FIELDS OF TABLE ti_usuarios2 WHERE nombre_ape NE space AND estado_usu EQ 'A'.

<< La sentencia into corresponding fields of table realiza la comparación de los campos teniendo en cuenta los tipos de los campos de cada tabla y la posición de cada uno de ellos >>

2.6 SELECT ... WHERE

Donde Nombre y Apellido es el parameter p_nomape y Estado del usuario que es el select-options s_estado

* Seleccionamos los registros que cumplan con los parámetros de la pantalla SELECT * FROM ztabla_usuarios INTO TABLE ti_usuarios WHERE nombre_ape EQ p_nomape AND estado_usu IN s_estado.

La cláusula IN se utiliza para los select-options en las condiciones de un select

2.7 SELECT MAX
Si queremos obtener el usuario activo con DNI más alto tendríamos que usar la cláusula MAX:

* Obtenemos el usuario activo con DNI más alto CLEAR v_dni. SELECT SINGLE MAX( dni ) INTO v_dni FROM ztabla_usuarios WHERE estado_usu EQ 'A'.

2.8 SELECT COUNT

Si quisiéramos saber la cantidad de usuarios con estado = "Activo", debemos usar la cláusula COUNT:

* Obtenemos la cantidad de usuarios activos CLEAR v_activos. SELECT COUNT(*) INTO v_activos FROM ztabla_usuarios WHERE estado_usu EQ 'A'.

2.9 SELECT FOR ALL ENTRIES IN

Si quisiéramos obtener de una tabla todos los registros que existan en una tabla interna cargada con datos, entonces debemos utilizar la cláusula FOR ALL ENTRIES IN

* Obtenemos 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 EQ ti_proveedores-dni.


2.10 SELECT ... LIKE

Si quisieramos obtener todos los registros que cumplan con un patrón de texto en alguno de sus campos debemos utilizar la cláusula LIKE

* Obtenemos todos los registros de usuarios cuyo Nombre y Apellido comience con A SELECT * FROM ztabla_usuarios INTO TABLE ti_usuarios WHERE nombre_ape LIKE 'A%'.
2.11 SELECT ... INNER JOIN

Tenemos la posibilidad de realizar un SELECT a más de una tabla base de datos, lo que se conoce con el nombre de JOIN

Para analizar este punto vamos a trabajar con dos tablas bases de datos muy importantes dentro del sistema SAP, como son la tabla estandar VBRK Factura: Datos de cabecera y la tabla VBRP de Factura: Datos de posición

Supongamos que deseamos recuperar de ambas tablas los registros donde el campo VBELN (Número de factura) coincida

TYPES: BEGIN OF ty_facturas, vbeln LIKE vbrk-vbeln, fkart LIKE vbrk-fkart, fktyp LIKE vbrk-fktyp, vbtyp LIKE vbrk-vbtyp, waerk LIKE vbrk-waerk, vkorg LIKE vbrk-vkorg, vtweg LIKE vbrk-vtweg, posnr LIKE vbrp-posnr, netwr LIKE vbrp-netwr, END OF ty_facturas. DATA: ti_facturas TYPE STANDARD TABLE OF ty_facturas, wa_facturas LIKE LINE OF ti_facturas. * Realizamos un join entre las tablas VBRK y VBRP SELECT t1~vbeln t1~fkart t1~fktyp t1~vbtyp t1~waerk t1~vkorg t1~vtweg t2~posnr t2~netwr INTO CORRESPONDING FIELDS OF TABLE ti_facturas FROM vbrk AS t1 INNER JOIN vbrp AS t2 ON t2~vbeln = t1~vbeln. La cláusula INNER JOIN entre dos tablas base de datos A y B entregará el resultado de la intersección de los conjuntos A y B Tambien Tambien tenemos disponible en ABAP la claúsula LEFT OUTER JOIN entre dos tablas base de datos A y B, en donde obtendremos como resultado la uníon entre las tablas A y B más la parte de información exterior de la tabla base de datos A, es de la tabla base de datos que se encuentre a la izquierda en la unión


 

Escanear / Compartir

 

 


Sobre el autor

Publicación académica de Yeny Gisela Yanes Bautista, en su ámbito de estudios para la Carrera Consultor ABAP Nivel Inicial.

SAP Senior

Yeny Gisela Yanes Bautista

Profesión: Ingeniera en Sistemas - Honduras - Legajo: XC34C

✒️Autor de: 46 Publicaciones Académicas

🎓Egresado de los módulos:

Certificación Académica de Yeny Yanes

✒️+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!