🚀PROMO #PLANCARRERA2024 - 🔥Bonificaciones, Precios Congelados y Cuotas

 X 

✒️ABAP El lenguaje SQL y la sentencia SELECT

ABAP El lenguaje SQL y la sentencia SELECT

ABAP El lenguaje SQL y la sentencia SELECT

La sentencia SELECT

  • Es la principar sentencia para acceder a las bases de datos.

Su sintaxis es: SELECT <resultado> "En resultado se colocan los campos que se quieren recuperar)

FROM <tabla> "Tabla es la tabla origen de donde se sacan los datos.

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

WHERE <condiciones> "Condiciones de la búsqueda

La clausula INTO TABLE se utiliza cuando el resultado de la consulta se guara en una tabla interna. Debemos tener en consideración que los campos de la tabla interna que se utiliza a continuación de la sentencia deben tener el mismo formato y orden, de las columnas o campos de la tabla base de datos que se están seleccionando mediante el SELECT.

Cuando se utiliza INTO, se eliminan todas las líneas existentes en la tabla interna.

La clausula APPENDING TABLE hace que los registros de las tablas que se seleccionan se añadan al final de la tabla interna sin pisar los registros preexistentes en la tabla interna.

Los campos en la tabla interna no se ven afectados por la selección, se llenan con los valores iniciales.

Es recomendable hacer CLEAR (borra la cabecera) y REFRESH (borra el contenido) de la TI antes de realizar la selección.

Utilizaremos la sentencia CLEAR para inicializar variables y estructuras en un programa. El contenido de una variable luego de la inicialización de la misma, es decir luego de ejecutar la sentencia CLEAR seguida del nombre de la variable, va a depender del tipo de la variable. Si la variable es de tipo "caracter" entonces el contenido de la misma luego de la inicialización será espacios en blanco, mientras que si la variable es de tipo "integer" entonces el contenido de la variable luego de la inicialización será cero.

Utilizamos la sentencia REFRESH para inicializar el contenido de una tabla interna. Es considerada una muy buena práctica de programación borrar el contenido de una tabla interna antes de utilizarla.

La sentencia OCCURS se utiliza para especificar la cantidad de registro en memoria de una tabla interna.

  • Si quisiéramos obtener de todos los campos de la tabla solamente un campo entonces deberíamos crear una tabla auxiliar solo con el campo en cuestión donde se llevarán los datos.
  • Siempre después de un SELECT se debe preguntar por el SY-SUBRC para saber como seguir.

La estructura estándar de SAP SYST contiene todas las variables del sistema. Las variables del sistema nos proporcionan información sumamente útil para determinar la lógica de nuestros programas.

La variable SY-SUBRC almacena el resultado de la ejecución de todas las sentencias que se ejecutan en ABAP, es decir, si luego de la ejecución de una sentencia determinada, se produce un error o no se obtiene datos o cualquier otra situación anormal, la variable del sistema SY-SUBRC tendrá almacenado un valor distinto de cero. En cambio si después de la ejecución de una sentencia, función o cualquier otro objeto ABAP, el contenido de la variable del sistema SY-SUBRC es cero, esto significa que la ejecución se realizó correctamente, sin errores.

  • Si queremos obtener el primer registro que cumple determinada condición utilizamos la sentencia SINGLE.

Si queremos que se seleccionen todos los campos de la base de datos, después de SINGLE ponemos *. Haciendo esto, el resultado de la consulta se guardara en una estructura (WA - se utiliza para almacenar 1 solo registro proveniente de la tabla base de datos) del mismo tipo que la tabla base de datos.

CLEAR wa_usuarios.
SELECT SINGLE *
FROM ztabla_esttk43h
INTO wa_usuarios
WHERE nombre_ape NE space.

Si queremos que se seleccione solamente un campo, insertamos dicho campo después de SINGLE. El resultado se guardara en una variable.

CLEAR v_dni.
SELECT SINGLE dni
FROM ztabla_esttk43h
INTO v_dni
WHERE nombre_ape NE space.

  • Si se quiere obtener de una tabla los registro que cumplan una condición pero queremos que los resultados se guarden en una TI que no tiene la misma estructura que la tabla utilizamos INTO CORRESPONDING FIELDS OF TABLE

Esta sentencia 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.

  • Si en un reporte quisiéramos hacer una selección a la tabla en base a lo que el usuario ingresa en la pantalla de selección

SELECT *
FROM ztabla_esttk43h
INTO TABLE ti_usuarios
WHERE nombre_ape = p_nomape
AND estado_usu IN s_estado. La clausula IN se utiliza para las SELECT-OPTION en las condiciones de un SELECT.

  • Si se quiere obtener un campo con uno de los valores más alto utilizamos la clausula MAX (para obtener el registro con el campo especificado de mayor valor numérico).

SELECT SINGLE MAX( dni )
INTO v_dni
FROM ztabla_usuarios
WHERE estado_usu = 'A'.

  • Para saber la cantidad de registros de una tabla SAP utilizamos COUNT.

SELECT COUNT(*)
INTO v_activos
FROM ztabla_esttk43h
WHERE estado_usu = 'A'

  • Si se quiere obtener de una tabla todos los registros existentes en una TI cargada con datos utilizamos la sentencia FOR ALL ENTRIES IN (Es un formato especial de la sentencia WHERE que se utiliza para especificar condiciones en tiempo de ejecución).

SELECT *
INTO TABLE ti_usuarios
FROM ztabla_esttk43h
FOR ALL ENTRIES IN ti_proveedores
WHERE dni = ti_proveedores-dni.

  • Si se quiere obtener todos los registros que con un patrón de texto utilizamos LIKE

LIKE tiene dos utilizadades diferentes dentro de los programas ABAP.

  1. Para la declaración de datos que sean iguales a otros tipos de datos ya existentes en el sistema.
  2. Para la selección de datos de las tablas dentro de las condiciones en la sentencia SELECT para buscar registros que cumplan con un determinado patrón que se especifica en la condición.

SELECT *
FROM ztabla_esttk43h
INTO TABLE ti_usuarios
WHERE nombre_ape LIKE 'M%'.


 

 

 


Sobre el autor

Publicación académica de Ana Schiau, en su ámbito de estudios para la Carrera Consultor ABAP.

SAP Senior

Ana Schiau

España - Legajo: TK43H

✒️Autor de: 55 Publicaciones Académicas

🎓Egresado del módulo:

Presentación:

Trabajo como key user sd en un multinacional y quiero aprender a programar en abap.

Certificación Académica de Ana Schiau

✒️+Comunidad Académica CVOSOFT

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

SAP Master

SENTENCIA SELECT INTO TABLE se utiliza cuando el resultado de la consulta se guarda en una tabla interna simepre despues de un select se debe preguntar por el sy-subrc para saber como proseguir SENTENCIA SINGLE para obtener la primera ocurrencia de la tabla clausula in para select option FOR ALL ENTRIES IN es un formato especial de la sentencia where que se utiliza para especificar condiciones en tiempo de ejecucion no se pueden utilizar like between e in

Acceder a esta publicación

Creado y Compartido por: Andres Felipe Escobar Lopez

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

SAP Master

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 manipulacion de la informacion almacenada. Algunos sistemas de gestion de bases de datos comunes que utilizan SQL son ORACLE, SAP HANA, MY SQL; Microsoft SQL SERVER, microsoft acces, ingres etc. LA SENTENCIA SELECT se utiliza para realizar informacion 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. Una sentencia select recupera cero o mas filas de una o mas tablas de base de datos o vistas de base...

Acceder a esta publicación

Creado y Compartido por: Pedro Salazar / Disponibilidad Laboral: FullTime + Carta Presentación

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

SAP Expert


La sentencia "SELECT" en el contexto de SAP ABAP (Advanced Business Application Programming), que se utiliza para recuperar datos de una base de datos. La sentencia "SELECT" se utiliza para consultar registros en tablas de la base de datos y recuperar la información que necesitas para tu programa. La sentencia "SELECT" puede incluir más detalles, como cláusulas "WHERE" para filtrar los registros, "GROUP BY" para agrupar resultados y otras opciones que permiten personalizar la consulta según tus necesidades. QL (Structured Query Language) es un lenguaje de programación utilizado para gestionar y manipular bases de datos relacionales. Con SQL, puedes realizar...

Acceder a esta publicación

Creado y Compartido por: Darling Geraldino

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

SAP Expert

El lenguaje SQL y la sentencia SELECT LECCION 6º DE 10 1 - El lenguaje SQL. Lenguaje de consulta estructurado, interfaz para cominucacrse con la base de datos y realizar operaciones de acceso y manipulacion de la informacion almacenda. Las sentencias SQL la podemos clasificar en 3. Lenguaje de definicion de datos(DDL) : se usa para definir estructuras como el esquema, la base de datos, las tablas de db, las restricciones, etc. Se dispone de CREATE, ALTER, DROP Lenguaje de manipulacion de datos (DML): se usa para manipular los datos. SELECT, INSERT,UPDATE, MODIFY, DELETE. Lenguaje de control de datos(DCL): se usa para dar o quitar permisos sobre los objetos a los que los usuarios se conectan a la base de datos. GRANT,REVOKE....

Acceder a esta publicación

Creado y Compartido por: Pablo Adrian Oggero

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

SAP Senior

SQL es un lenguaje de consulta de bases de datos, que se utiliza para comunicarse con la base de datos y realizar operaciones, este lenguaje es el mas utilizado por las bases de datos relacionales y aunque es el mas utilizado cada base de datos tiene sus propias extensiones. las sentencias del lenguaje SQL pueden ser clasificadas en tres, que serian * lenguaje de definición de datos DDL - CREATE. - ALTER. - DROP. * lenguaje de manipulación de datos. DML - SELECT - INSERT - UPDATE - MODIFY - DELETE * lenguaje de control de datos DCL - GRANT - REVOKE LA SENTENCIA SELECT esta sentencia permite obtener registros de la base de datos, filtrados o no. para obtener todos los resultados de una tabla se pone * y INTO TABLE cuando los...

Acceder a esta publicación

Creado y Compartido por: Jose Sebastian Salamanca Garcia

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

SAP Junior

1. La sentencia SELECT Se utiliza para acceder a las bases de datos de SAP. podemos acceder a los registros almacenados en todas las tablas. Sintaxis: SELECT<resultado> FROM<tabla> INTO<target> WHERE<condiciones>. Ejemplo. Si quisieramos obtener los registros de la tabla ZTABLA_USUARIOS, usariamos el siguiente codigo: SELECT * FROM ztabla_usuarios INTO TABLE ti_usuarios. APPENDING TABLE: Se utiliza junto con la sentencia SELECT y produce que los regsitros de las tablas que se selecionan se añadan al final de la tabla interna sin pisar los registros preexistentes en la tabla interna. INTO TABLE: Se utiliza junto con la sentencia SELECT y produce que los rgistros de las tablas base de datos que se selecionan,...

Acceder a esta publicación

Creado y Compartido por: Jairo Alexander Arias Linares

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

SAP Junior

Lenguaje SQL y la sentencia Select 1. Lenguaje SQL Sus siglas significan Lenguaje de Consulta estrucurado Es un lenguaje de consulta usado como interfaz para comunicarse con bases de datos y realizar operaciones de acceso y manipulacion de la informacion almacenada. Es un lenguaje sencillo de consulta que permite la seleccion, insercion, actualizacion y borrado de datos. Tiene la capacidad de hacer calculos avanzados en algebra. Es utilizado en empresas que almacenana datos en una base de datos. El lenguaje SQL es estandar mantenido por ANSI, por lo que las bases de datos son las mismas en la mayoria de los sistemas Algunos de bases de datos mas comunes que utiliza SQL son: ORACLE, SAP, HANA, MySQL, Microsoft SQLm Microsoft...

Acceder a esta publicación

Creado y Compartido por: Lucas Mera / Disponibilidad Laboral: FullTime + Carta Presentación

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

SAP SemiSenior

Sentencia Select nos permite acceder a la base de datos SELECT <cmpos necesitamos> FROM <tabla BD> INTO TABLE<tabla (o workarea)> WHERE <campo> = <valor>. recomendable realizar CLEAR o REFRESH a la tabla antes de la siguiente sentencia SELECT <cmpos necesitamos> FROM <tabla BD> APPENDING TABLE <tabla o workarea> WHERE <campo> = <valor>. SELECT SINGLE<cmpos necesitamos> FROM <tabla BD> INTO TABLE<tabla (o workarea)> WHERE <campo> = <valor>. "para obtener 1er ocurrencia SELECT SINGLE<cmpos necesitamos> FROM <tabla BD> INTO <variable> WHERE <campo> = <valor>. "para obtener 1er ocurrencia en variable SELECT <cmpos1>...

Acceder a esta publicación

Creado y Compartido por: Tania Luisa Diaz Corona / Disponibilidad Laboral: FullTime + Carta Presentación

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

SAP Senior

EL LENGUAJE SQL: SQL como sus siglas la identifican, se definen como "Lenguaje de consulta estructurado" este lenguaje puede ser clasificado en tres grupos que son los siguientes: - Lenguaje de definición de datos DDL: gracias a este lenguaje podemos definir los diferentes objetos que tenemos en nuestra base de datos, se utiliza para definir estructuras como son el esquema, la base de datos, las tablas de bases de datos, las restricciones, etc. Para definir las estructuras disponemos de 3 sentencias: *** 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....

Acceder a esta publicación

Creado y Compartido por: Jean Carlos Lopez / Disponibilidad Laboral: FullTime

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

SAP Senior

SQL SELECT - Es la principal sentencia para acceder bases de datos. SELECT * FROM z_tabla INTO TABLE ti_tabla WHERE condiciones *ti-tabla es del mismo tipo que z_tabla APPENDING TABLE - No planchará el contenido de una tabla interna sino que lo agreagará al final. *Se recomienda hacer CLEAR Y REFRESH a la tabla interna Si solo vamos a obtener un campo es recomendable crear una tabla auxiliar solo con ese campo: SELECT id FROM z_tabla INTO TABLE ti_id. ****SY-SUBRC****** Validar siempre que sea 0 despues de cada sentencia para confirmar éxito o error. -Obtener el primer registro SELECT SINGLE * FROM z_tabla INTO wa_table -Obtener un campo del primer registro, va a una variable SELECT SINGLE id FROM z_tabla INTO v_id -Guardar...

Acceder a esta publicación

Creado y Compartido por: Armando Mayo Marquez / Disponibilidad Laboral: FullTime + Carta Presentación

 


 

👌Genial!, estos fueron los últimos artículos sobre más de 79.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!