La compilación de entrevistas SQL debe probar las preguntas de la entrevista SQL: 20 preguntas clásicas

1. ¿Qué es una base de datos?

Una base de datos es una colección organizada de datos que se pueden almacenar y recuperar digitalmente desde un sistema informático local o remoto. Las bases de datos pueden ser grandes y complejas, y se utilizan métodos de modelado y diseño fijo para desarrollar dichas bases de datos.

2. ¿Qué es un DBMS?

DBMS significa sistema de gestión de bases de datos. DBMS es el software del sistema responsable de crear, recuperar, actualizar y administrar bases de datos. Al actuar como una interfaz entre la base de datos y sus usuarios finales o software de aplicación, puede garantizar que nuestros datos sean coherentes, organizados y de fácil acceso.

3. ¿Qué es RDBMS? ¿En qué se diferencia de un DBMS?

RDBMS son las siglas de Relational Database Management System. En comparación con DBMS, la principal diferencia aquí es que RDBMS almacena datos en forma de una colección de tablas y puede definir relaciones entre los campos comunes de estas tablas. La mayoría de los sistemas de gestión de bases de datos modernos (como MySQL, Microsoft SQL Server, Oracle, IBM DB2 y Amazon Redshift) se basan en RDBMS.

4. ¿Qué es SQL?

SQL son las siglas de Structured Query Language. Es el lenguaje estándar de los sistemas de administración de bases de datos relacionales. Es particularmente útil cuando se trata de datos organizacionales compuestos por entidades (variables) y las relaciones entre diferentes entidades de los datos.

5. ¿Cuál es la diferencia entre SQL y MySQL?

SQL es un lenguaje estándar para buscar y operar bases de datos estructuradas. Por el contrario, MySQL es un sistema de gestión de bases de datos relacionales que se utiliza para gestionar bases de datos SQL, como SQL Server, Oracle o IBM DB2.

6. ¿Qué son formularios y campos?

Una tabla es una colección organizada de datos almacenados en filas y columnas. Las columnas se pueden clasificar como verticales y las filas se pueden clasificar como horizontales. Las columnas de la tabla se denominan campos y las filas se pueden llamar registros.

7. ¿Cuáles son las restricciones en SQL?

Las restricciones se utilizan para especificar reglas sobre los datos de la tabla. Durante la creación de la tabla o después de la creación de la tabla con el comando ALTER TABLE, se puede aplicar a uno o varios campos en la tabla SQL. Las limitaciones son:

  • NOT NULL: restringe la inserción de valores NULL en la columna.
  • Verificar: verifique que todos los valores del campo cumplan con la condición.
  • Valor predeterminado: si no se especifica ningún valor para el campo, se asigna automáticamente un valor predeterminado.
  • Único: asegúrese de insertar un valor único en el campo.
  • ÍNDICE: proporciona un índice para el campo, puede recuperar registros más rápido.
  • PRIMARY KEY: identifica de forma exclusiva cada registro de la tabla.
  • LLAVE EXTRANJERA: para garantizar la integridad referencial de los registros de otra tabla.

8. ¿Cuál es la clave principal?

La restricción PRIMARY KEY identifica de forma única cada fila de la tabla. Debe contener un valor ÚNICO y tiene una restricción NOT NULL implícita.

Las tablas en SQL están estrictamente limitadas a una sola clave principal, que se compone de uno o varios campos (columnas).

 
CREATE TABLE Students (      /* Create table with a single field as primary key */
    ID INT NOT NULL
    Name VARCHAR(255)
    PRIMARY KEY (ID)
);

CREATE TABLE Students (      /* Create table with multiple fields as primary key */
    ID INT NOT NULL
    LastName VARCHAR(255)
    FirstName VARCHAR(255) NOT NULL,
    CONSTRAINT PK_Student
    PRIMARY KEY (ID, FirstName)
);

ALTER TABLE Students      /* Set a column as primary key */
ADD PRIMARY KEY (ID);

ALTER TABLE Students      /* Set multiple columns as primary key */
ADD CONSTRAINT PK_Student      /*Naming a Primary Key*/
PRIMARY KEY (ID, FirstName);

 

9. ¿Qué es la restricción ÚNICA?

La restricción UNIQUE asegura que todos los valores de la columna sean diferentes. Esto proporciona unicidad a las columnas y ayuda a identificar de forma única cada fila. A diferencia de la clave principal, cada tabla puede definir múltiples restricciones únicas. La sintaxis del código de UNIQUE es muy similar a la sintaxis de PRIMARY KEY y se puede usar indistintamente.

 
CREATE TABLE Students (      /* Create table with a single field as unique */
    ID INT NOT NULL UNIQUE
    Name VARCHAR(255)
);

CREATE TABLE Students (      /* Create table with multiple fields as unique */
    ID INT NOT NULL
    LastName VARCHAR(255)
    FirstName VARCHAR(255) NOT NULL
    CONSTRAINT PK_Student
    UNIQUE (ID, FirstName)
);

ALTER TABLE Students      /* Set a column as unique */
ADD UNIQUE (ID);

ALTER TABLE Students      /* Set multiple columns as unique */
ADD CONSTRAINT PK_Student      /* Naming a unique constraint */
UNIQUE (ID, FirstName);

 

10. ¿Qué es una clave externa?

UNA CLAVE EXTRANJERA consiste en uno o una colección de campos en una tabla, que esencialmente se refiere a una CLAVE PRIMARIA en otra tabla. Las restricciones de clave externa garantizan la integridad referencial de la relación entre las dos tablas.

Las tablas con restricciones de clave externa se marcan como tablas secundarias y las tablas que contienen claves candidatas se marcan como tablas de referencia o tablas principales.

 
CREATE TABLE Students (      /* Create table with foreign key - Way 1 */
    ID INT NOT NULL
    Name VARCHAR(255)
    LibraryID INT
    PRIMARY KEY (ID)
    FOREIGN KEY (Library_ID) REFERENCES Library(LibraryID)
);

CREATE TABLE Students (      /* Create table with foreign key - Way 2 */
    ID INT NOT NULL PRIMARY KEY
    Name VARCHAR(255)
    LibraryID INT FOREIGN KEY (Library_ID) REFERENCES Library(LibraryID)
);


ALTER TABLE Students      /* Add a new foreign key */
ADD FOREIGN KEY (LibraryID)
REFERENCES Library (LibraryID);

 

11. ¿Qué es unirse? Enumere sus diferentes tipos.

La cláusula SQL Join se utiliza para combinar registros (filas) en función de columnas relacionadas entre dos o más tablas en la base de datos SQL.

  • Unión (interna): recupere registros con valores coincidentes en las dos tablas involucradas en la combinación. Esta es una combinación de consultas muy utilizada.
  • SELECCIONAR  DE Table_A JOIN Table_B; SELECCIONAR  DE Table_A INNER JOIN Table_B;
  • Unión izquierda (externa): recupera todos los registros / filas de la izquierda y recupera los registros / filas coincidentes de la tabla de la derecha. SELECT * FROM Table_A A left join Table_B B ON A.col = B.col;
  • Unión derecha (externa): recupera todos los registros / filas de la tabla derecha y recupera registros / filas coincidentes de la tabla izquierda. SELECT * FROM Table_A A right join Table_B B ON A.col = B.col;
  • UNIÓN COMPLETA (EXTERIOR): recupere todos los registros con elementos coincidentes en la tabla izquierda o derecha. SELECT * FROM Table_A A FULL JOIN Table_B B ON A.col = B.col;

12. ¿Qué es la autounión?

Self-join es un caso de unión regular, donde una tabla se une a sí misma de acuerdo con alguna relación entre sus propias columnas. Las autouniones usan cláusulas INNER JOIN o LEFT JOIN, y los alias de tabla se usan para asignar diferentes nombres a las tablas en la consulta.

 
SELECT A.emp_id AS "Emp_ID",A.emp_name AS "Employee",
B.emp_id AS "Sup_ID",B.emp_name AS "Supervisor"
FROM employee A, employee B
WHERE A.emp_sup = B.emp_id;

 

## 13. ¿Qué es la unión cruzada? La unión cruzada se puede definir como el producto cartesiano de las dos tablas incluidas en la unión. El número de filas en la tabla unida es el mismo que el producto cruzado del número de filas en las dos tablas. Si usa la cláusula WHERE en la combinación cruzada, la consulta funcionará como una INNER JOIN.

 
SELECT stu.name, sub.subject 
FROM students AS stu
CROSS JOIN subjects AS sub;

 

14. ¿Qué es un índice? Explique los diferentes tipos.

Un índice de base de datos es una estructura de datos que puede buscar datos rápidamente en una o más columnas de una tabla. Mejora la velocidad de operación para acceder a los datos de las tablas de la base de datos a costa de escritura adicional y mantenimiento de la memoria de la estructura de datos del índice.

 
CREATE INDEX index_name      /* Create Index */
ON table_name (column_1, column_2);

DROP INDEX index_name;      /* Drop Index */

 

15. ¿Cuál es la diferencia entre un índice agrupado y un índice no agrupado?

Como se mencionó anteriormente, la diferencia se puede dividir en tres pequeños factores:

  • El índice agrupado modifica la forma en que los registros basados ​​en columnas indexadas se almacenan en la base de datos. El índice no agrupado crea una entidad separada dentro de la tabla que hace referencia a la tabla original.
  • El índice agrupado se utiliza para recuperar datos de la base de datos de forma fácil y rápida, mientras que la obtención de registros del índice no agrupado es relativamente lenta.
  • En SQL, una tabla puede tener un único índice agrupado y una tabla puede tener varios índices no agrupados.

16. ¿Qué es la integridad de los datos?

La integridad de los datos es la garantía de la precisión y consistencia de los datos a lo largo de su ciclo de vida, y es un aspecto clave de cualquier sistema que almacena, procesa o recupera datos en el diseño, implementación y uso. También define restricciones de integridad para hacer cumplir las reglas comerciales sobre los datos cuando se ingresan en una aplicación o base de datos.

17. ¿Qué es una consulta?

Una consulta es una solicitud para obtener datos o información de una tabla de base de datos o una combinación de tablas. La consulta de la base de datos puede ser una consulta de selección o una consulta de acción.

SELECT fname, lname          /* select query */
FROM myDb.students
WHERE student_id = 1;

 

 
UPDATE myDB.students          /* action query */
SET fname = 'Captain', lname = 'America'
WHERE student_id = 1;

 

18. ¿Qué es una subconsulta? ¿Qué tipo es?

Una subconsulta es una consulta dentro de otra consulta, también conocida como consulta anidada o consulta interna. Se utiliza para restringir o mejorar los datos que serán consultados por la consulta principal, restringiendo o mejorando así la salida de la consulta principal respectivamente. Por ejemplo, aquí obtenemos la información de contacto de los estudiantes que se han inscrito en cursos de matemáticas:

 
SELECT name, email, mob, address
FROM myDb.contacts
WHERE roll_no IN (
     SELECT roll_no
     FROM myDb.students
     WHERE subject = 'Maths');

 

Hay dos tipos de subconsultas: asociativas y no asociativas.

  • Las subconsultas relacionadas no pueden considerarse consultas independientes, pero pueden hacer referencia a las columnas de las tablas enumeradas en el DESDE de la consulta principal.
  • Puede tratar las subconsultas no relacionadas como consultas independientes y reemplazar la salida de las subconsultas con subconsultas en la consulta principal.

19. ¿Qué es una instrucción SELECT?

El operador SELECT en SQL se utiliza para seleccionar datos de la base de datos. Los datos devueltos se almacenan en la tabla de resultados, denominada conjunto de resultados.

 
SELECT * FROM myDB.students;

 

20. ¿Qué cláusulas comunes se utilizan en la consulta SELECT en SQL?

Algunas cláusulas SQL comunes que se utilizan junto con las consultas SELECT son las siguientes:

  • La cláusula WHERE en SQL se utiliza para filtrar los registros necesarios en función de condiciones específicas.
  • La cláusula ORDER BY en SQL se utiliza para ordenar registros en orden ascendente (ASC) o en orden descendente (DESC) de acuerdo con ciertos campos.
  • La cláusula GROUP BY en SQL se usa para agrupar registros con los mismos datos y se puede usar en combinación con ciertas funciones agregadas para generar resultados agregados a partir de la base de datos.
  • La cláusula HAVING en SQL se usa junto con la cláusula GROUP BY para filtrar registros. Es diferente de WHERE porque la cláusula WHERE no puede filtrar registros agregados.
  • Cada instrucción SELECT en la cláusula debe tener el mismo número de columnas
  • Estas columnas también deben tener tipos de datos similares
  • Las columnas de cada instrucción SELECT deben tener el mismo orden
  • Después de cualquier declaración de variable, declare un cursor. La declaración del cursor siempre debe estar asociada con la instrucción SELECT.
  • Abra el cursor para inicializar el conjunto de resultados. Antes de obtener filas del conjunto de resultados, se debe llamar a la instrucción OPEN.
  • La instrucción FETCH recupera y se mueve a la siguiente fila en el conjunto de resultados.
  • Llame a la instrucción CLOSE para desactivar el cursor.
  • Finalmente, use la instrucción DEALLOCATE para eliminar la definición del cursor y liberar los recursos asociados.
  • Uno a uno se puede definir como una relación entre dos tablas, donde cada registro en una tabla está asociado con el valor máximo de un registro en la otra tabla.
  • Uno a muchos y muchos a uno: esta es la relación más utilizada, donde un registro en una tabla está relacionado con varios registros en otra tabla.
  • De muchos a muchos, se utiliza cuando ambas partes necesitan varias instancias para definir la relación. Relación autorreferencial: se utiliza cuando una tabla necesita definir una relación consigo misma.

Todavía quiero recomendar el grupo de aprendizaje de Python que construí por mí mismo : 721195303. Todos los estudiantes del grupo están aprendiendo Python. Si quieres aprender o estás aprendiendo Python, puedes unirte. Todos son parte del desarrollo de software y comparten productos de vez en cuando (solo relacionados con el desarrollo de software de Python), incluida una copia de los últimos materiales avanzados de Python y la enseñanza basada en cero compilada por mí en 2021. ¡Bienvenidos amigos que están avanzados e interesados ​​en Python a unirse!

Supongo que te gusta

Origin blog.csdn.net/aaahtml/article/details/114300604
Recomendado
Clasificación