El lenguaje de consulta estructurado (SQL) es el lenguaje de programación estándar que utilizan los administradores de bases de datos y los analistas de datos para consultar las bases de datos. Se utiliza ampliamente en los lenguajes de programación de sitios web, aplicaciones y otras plataformas.
Se utiliza para acceder a los datos de una base de datos y manipularlos, lo que incluye la creación y modificación de tablas y columnas y la consulta de los datos mediante comandos SQL.
Sin duda, este post le dará algunas ideas si está buscando preguntas y respuestas que pueda utilizar mientras se prepara para una entrevista sobre SQL. En una entrevista de trabajo para un ingeniero de datos, analista de datos, administrador de bases de datosetc., cabe esperar las siguientes preguntas.
¿Cuáles son los comandos SQL básicos?
Algunos de los comandos SQL más importantes son:
- SELECT - extrae datos de una base de datos.
- CREATE TABLE - crea una nueva tabla.
- DELETE - borra datos de una base de datos.
- INSERT INTO - inserta nuevos datos en una base de datos.
- ALTER DATABASE - modifica una base de datos.
- CREATE DATABASE - crea una nueva base de datos.
- UPDATE - actualiza los datos de una base de datos.
¿Cuáles son las cuatro sentencias SQL importantes?
Las principales sentencias SQL se dividen en estas categorías:
- Sentencias del Lenguaje de Definición de Datos (DDL)
- Sentencias del Lenguaje de Manipulación de Datos (DML)
- Sentencias del Lenguaje de Control de Datos (DCL)
- Sentencias del Lenguaje de Control de Transacciones (TCL)
¿Qué significa clave primaria en SQL?
Una clave primaria es una columna (o conjunto de columnas) que permite identificar de forma única cada fila de una base de datos. Las bases de datos SQL dan mucha importancia a las claves primarias. Proporcionan a cada fila de una tabla de base de datos un identificador único. Una clave primaria puede constar de uno o más campos, y sólo puede haber una clave primaria por tabla.
¿Qué son los tipos de datos SQL?
Un tipo de datos es un atributo que describe el tipo de datos que puede almacenar un objeto, como cadenas binarias, datos numéricos, datos de caracteres, datos financieros, datos de fecha y hora, etc.
En SQL, los tipos de datos se clasifican en los siguientes grupos:
- Numéricos exactos
- Números aproximados
- Fecha y hora
- Cadenas de caracteres
- Cadenas de caracteres Unicode
- Cadenas binarias
¿Dónde se almacenan los nombres de usuario y las contraseñas en SQL Server?
Los nombres de usuario y las contraseñas se almacenan en los registros sys.server principals y sys.sql de la tabla SQL, respectivamente. Las contraseñas no se almacenan en texto normal.
¿Qué es la inyección SQL?
Los ataques de inyección SQL son uno de los tipos de ciberataques más comunes en la actualidad. Permiten a los atacantes malintencionados acceder a los datos manipulando la base de datos de una aplicación. Esto puede acarrear una amplia gama de consecuencias negativas, desde pérdidas financieras hasta la pérdida de datos sensibles. La mejor forma de protegerse contra los ataques de inyección SQL es evitar que se produzcan en primer lugar.
¿Qué es un disparador en SQL y sus tipos?
Un disparador es un tipo especial de procedimiento almacenado que se ejecuta automáticamente cuando se produce un evento en el servidor de bases de datos. Los disparadores se utilizan para evaluar los datos antes o después de modificarlos mediante sentencias DDL y DML.
Existen tres tipos de disparadores: LOGON, DDL y DML.
- Disparadores LOGON: Estos trig gers se disparan cuando un usuario inicia un evento de Logon.
- Disparadores DDL: Se disparan siempre que se emite un comando DDL como CREATE, ALTER o DROP.
- Disparadores DML: Se disparan siempre que un comando DML modifica datos. Comparables a INSERT, UPDATE y DELETE
¿Cómo distinguiría entre funciones de una sola fila y de varias filas?
Una sola fila de una tabla puede verse afectada por funciones de una sola fila a la vez. Ejecutan una fila y luego sólo devuelven un resultado. Es bien sabido que las conversiones de longitud y de mayúsculas y minúsculas son funciones de una sola fila.
Las filas de una tabla pueden verse afectadas por muchas funciones de fila simultáneamente. También se conocen como funciones de grupo, ya que ejecutan varias filas antes de devolver un único resultado.
¿Qué es la normalización de bases de datos y cuáles son sus cuatro tipos principales en SQL?
La normalización de bases de datos es un proceso mediante el cual se organizan los datos para facilitar su accesibilidad y reducir la redundancia de los mismos. Las columnas y tablas de una base de datos se organizan durante la normalización para asegurarse de que cualquier dependencia se mantiene correctamente mediante las restricciones de integridad de la base de datos.
Los cuatro tipos de procesos de normalización de bases de datos son los siguientes:
- Primera forma normal (1 NF)
- Segunda forma normal (2 NF)
- Tercera Forma Normal (3 NF)
- Forma Normal Boyce Codd o Cuarta Forma Normal (BCNF o 4 NF)
¿Qué son los índices y las restricciones en SQL?
Los índices son uno de los conceptos más importantes en SQL. Nos permiten encontrar rápidamente filas específicas de datos en grandes bases de datos. También nos ayudan a aplicar restricciones, que son reglas que indican a la base de datos cómo comportarse cuando se cumplen determinadas condiciones.
Los índices se utilizan para mejorar el rendimiento de las consultas acelerando la búsqueda de datos en las tablas. También se utilizan para mejorar la legibilidad de los datos de las tablas.
Las restricciones se utilizan para limitar el tipo de datos que pueden entrar en una tabla. Esto garantiza la exactitud y fiabilidad de los datos de la tabla. Si hay alguna violación entre la restricción y la acción de los datos, la acción se aborta.
¿Cuáles son las restricciones SQL más utilizadas?
Las restricciones SQL más utilizadas son:
- CREAR ÍNDICES: Este comando garantiza la creación de índices para las tablas, de forma que se simplifica la recuperación de datos.
- FOREIGN KEY: La clave ajena de una tabla debe conectar tablas con atributos similares.
- DEFAULT: Si no se suministra ningún valor para los campos de una columna, se suministra un valor por defecto para dichos campos.
- ÚNICO: Especifica que cada valor de una columna debe ser distinto.
- CLAVE PRIMARIA: La clave primaria de una tabla debe identificar cada fila.
- NOT NULL: Esta condición garantiza que las columnas no acepten valores NULL.
- CHECK: Garantiza que cada campo de columna cumpla un requisito predeterminado.
¿Es NULL igual a 0 en SQL?
Un valor NULL en SQL denota un valor no disponible o asignado. Un espacio (' ') o un cero (0) no son equivalentes al valor NULL. No puede comparar el valor NULL con ningún otro valor utilizando operadores de comparación como "=" o">" ya que no puede ser igual o desigual a ningún otro valor.
¿Cómo prevenir los ataques de inyección SQL?
Junto con el escaneado constante y las pruebas de penetraciónlos métodos de seguridad como la validación de entradas, la higienización, las sentencias preparadas y las consultas SQL parametrizadas son cruciales para prevenir los ataques de inyección SQL. Además, defensas rápidas como un cortafuegos ayudarían a salvaguardar la base de datos SQL.
¿Qué es el SQL dinámico y cuándo puede utilizarlo?
El SQL dinámico es una función que puede utilizar para modificar sus consultas en tiempo de ejecución basándose en uno o varios criterios, como la fecha actual, la hora actual o cualquier otro criterio que elija.
Puede utilizar el SQL dinámico para modificar sus consultas de forma significativa y puede ayudarle a alcanzar sus objetivos o simplemente a mejorar sus habilidades de programación. Tanto si está creando una nueva aplicación, mejorando una base de datos o añadiendo funciones de almacén de datos a su sistema de producción, puede utilizar el SQL dinámico para hacerlo todo.
¿Cuáles son los distintos tipos de claves en SQL?
Clave primaria: Cada fila o registro de una tabla de base de datos se identifica de forma única mediante un campo denominado clave primaria. El valor único debe estar en la clave primaria. Los campos de clave primaria no pueden contener valores NULL. Sólo puede haber una clave primaria por tabla, formada por uno o más campos.
Clave ajena: El campo o grupo de campos de una tabla que se relaciona con la clave primaria de otra tabla se denomina clave ajena. Las tablas con claves primarias se denominan tablas padre, mientras que las tablas con claves ajenas se denominan tablas hijo.
Superclave: Una superclave es una clave o conjunto de claves que ayudan a identificar las entradas de una tabla. Aunque no todos los atributos son necesarios para identificar un registro, una superclave puede tener uno o varios de ellos.
Clave candidata: Una clave candidata es un subconjunto de superclaves que puede utilizarse para identificar registros en una base de datos basándose en uno o varios atributos. A diferencia de la superclave, todas las características de una clave candidata deben ser útiles para identificar registros.
Clave compuesta: Una clave compuesta es una combinación de dos o más columnas de una tabla que se utiliza para identificar filas de una tabla. Una clave compuesta es una clave primaria con algún otro atributo o columna.
¿Cuáles son los tipos de índices en SQL?
Los siguientes son tipos de índices en SQL
- Índice hash
- optimizado para memoria No agrupado
- Índice agrupado
- Índice no agrupado
- Índice único
- Índice de almacén de columnas
- Índice con columnas incluidas
- Índice sobre columnas computarizadas
- Índice filtrado
- Índice espacial
- Índice XML
- Índice de texto completo
¿Qué se entiende por buffer pool y mencione sus ventajas?
En SQL, una reserva de búferes también se denomina caché de búferes. Todos los recursos pueden utilizar una reserva de búferes para almacenar sus páginas de datos en caché. Al configurar una instancia de SQL Server, se puede especificar el tamaño de la reserva de búferes. El tamaño de una reserva de búferes determina cuántas páginas puede almacenar.
A continuación se enumeran las ventajas de un grupo de búferes:
- Mejoras en el rendimiento de E/S
- Aumento del rendimiento de las transacciones
- Reducción de la latencia de E/S
- Mejora del rendimiento de lectura
¿Qué se entiende por dependencia y mencione las diferentes dependencias?
Cuando se hace referencia a un objeto por su nombre en una expresión SQL mantenida en otro objeto, se establece una dependencia entre los dos objetos. El término "entidad referenciada" se refiere a un objeto que aparece en una expresión SQL, mientras que el término "entidad referenciadora" se refiere a un objeto que contiene una expresión SQL.
A continuación se describen los distintos tipos de dependencias en SQL.
- Dependencia funcional
- Dependencia totalmente funcional
- Dependencia multivaluada
- Dependencia transitiva
- Dependencia parcial
¿Qué son las uniones SQL y cuáles son las uniones SQL más populares?
Las uniones son una parte fundamental de la gestión de datos en SQL. Permiten unir dos o más tablas para crear una única tabla que puede utilizarse para analizar datos. También proporcionan una forma de filtrar los resultados basándose en criterios en una única tabla, lo que puede ser útil cuando se intenta encontrar filas o columnas específicas en una tabla de gran tamaño.
Existen cuatro tipos principales de JOIN en SQL: INNER JOIN, OUTER JOIN, CROSS JOIN y SELF JOIN.
¿Qué son los operadores de conjunto en SQL?
Los datos de una o más tablas del mismo tipo pueden combinarse utilizando el operador de conjunto. Los operadores set y join de SQL son similares, pero existen algunas diferencias clave. Los operadores de conjunto SQL reúnen registros de diferentes consultas, mientras que las uniones SQL combinan columnas de diferentes tablas. Las consultas SQL compuestas son aquellas que incluyen operaciones de conjunto.
Conclusión
Espero que estas preguntas de entrevista sobre SQL le ofrezcan una buena idea de lo que puede esperar desde la perspectiva de una entrevista. Para superar la entrevista de SQL es necesario estar más familiarizado con el entorno SQL; esto se puede conseguir estudiando SQL en profundidad. Para evaluar los principios clave de SQL, también debe practicar las preguntas de la entrevista sobre consultas SQL y seguir leyendo.
Si busca aclaraciones sobre las consultas SQL, visite la hoja de trucos SQL para obtener más información sobre las sentencias SQL.
Para adquirir experiencia práctica realizando consultas SQL, consulte estas plataformas de práctica de SQL.
-
Llevo más de 20 años en el sector de las TI. He trabajado en empresas de Fortune 100 en puestos directivos, ocupándome de proyectos relacionados con la banca estadounidense, BFS, hipotecas, seguros y productos de gran consumo. Aparte de las TI, me gusta leer libros, especialmente de espiritualidad... Seguir leyendo