Published on

November 23, 2014

15 Preguntas Esenciales para Entrevistas de SQL Server

¿Estás buscando contratar a un desarrollador o personal de soporte de SQL Server? Puede ser desafiante encontrar al candidato adecuado con las habilidades y experiencia necesarias. Para ayudarte en el proceso de contratación, hemos compilado una lista de 15 preguntas esenciales para entrevistas de SQL Server que pueden separar rápidamente a profesionales de nivel senior de principiantes.

1. ¿Se puede escribir un inner join sin la cláusula JOIN ON? Si es así, ¿en qué cláusula se especifica la condición de unión?

Sí, se puede escribir un inner join sin la cláusula JOIN ON. La condición de unión se especifica en la cláusula WHERE.

2. ¿Qué hacen las funciones de agregado de SQL con los valores NULL?

Las funciones de agregado de SQL ignoran los valores NULL, excepto COUNT().

3. Tus consultas de SQL se están abortando y sospechas que se debe a la sensibilidad de mayúsculas y minúsculas en los nombres de tablas y columnas. ¿Qué propiedad de la base de datos te indica si los objetos son sensibles a mayúsculas y minúsculas?

La propiedad de intercalación (collation) de la base de datos te indica si los objetos son sensibles a mayúsculas y minúsculas.

4. Necesitas acceder a 2 servidores de SQL en una consulta. Decides usar nombres de 4 partes para estos servidores. ¿Cuáles son las 4 partes de un nombre de 4 partes? ¿Qué debes hacer primero?

Un nombre de 4 partes consiste en NombreServidor.NombreBaseDatos.NombreEsquema.NombreObjeto. Primero, tú o tu DBA deben crear un servidor vinculado (linked server).

5. ¿Cuál es la diferencia entre COUNT(*), COUNT(c), COUNT(1) en un SELECT de la tabla t?

COUNT(*) y COUNT(1) cuentan todas las filas, mientras que COUNT(c) solo cuenta las filas con valores no nulos en la columna c.

6. ¿Cuál es la diferencia entre #NombreTabla y ##NombreTabla?

#NombreTabla es una tabla temporal local visible solo en la sesión actual, mientras que ##NombreTabla es una tabla temporal global visible para todas las sesiones.

7. ¿Qué es un índice agrupado?

Un índice agrupado es el índice del orden físico de las filas de la tabla en el disco. Una tabla puede tener como máximo un índice agrupado.

8. ¿Puede una instrucción INSERT también devolver todas las columnas insertadas como un conjunto de resultados? Si es así, ¿qué cláusula de la instrucción INSERT se utiliza para esto?

Sí, una instrucción INSERT puede devolver todas las columnas insertadas como un conjunto de resultados. Esto se hace utilizando la cláusula OUTPUT de la instrucción INSERT.

9. ¿Qué es un Producto Cartesiano? ¿Es lo mismo que un Join Cruzado? ¿Es “Mejores Prácticas” no usar ninguno de ellos?

Un Producto Cartesiano, también conocido como Join Cruzado, consiste en todas las filas de la tabla izquierda unidas a todas las filas de la tabla derecha. Si bien no se considera “Mejores Prácticas” usarlos en la mayoría de los casos, pueden tener usos válidos en ciertos escenarios.

10. En una consulta SELECT, ¿qué combinaciones de cláusulas son válidas: GROUP BY sin HAVING, GROUP BY con HAVING, HAVING sin GROUP BY?

Todas las combinaciones de cláusulas son válidas en una consulta SELECT: GROUP BY sin HAVING, GROUP BY con HAVING y HAVING sin GROUP BY.

11. ¿Qué objetos permiten parámetros: Procedimientos almacenados, Vistas, Funciones, Triggers, Consultas SELECT?

Los Procedimientos almacenados y las Funciones permiten parámetros. Los Triggers, Vistas y Consultas SELECT no permiten parámetros.

12. ¿Qué cláusulas de una instrucción SELECT no pueden contener una subconsulta: cláusula de lista SELECT, FROM, JOIN ON, WHERE, GROUP BY, HAVING, ORDER BY?

La cláusula de lista SELECT, FROM, JOIN ON, WHERE, GROUP BY, HAVING y ORDER BY pueden contener todas una subconsulta.

13. En una instrucción SELECT, ¿los operadores lógicos AND, OR, NOT pueden aparecer como predicados en la cláusula JOIN ON? Si es así, ¿cómo sería diferente colocarlos en la cláusula JOIN ON en comparación con la cláusula WHERE?

Sí, los operadores lógicos AND, OR, NOT pueden aparecer como predicados en la cláusula JOIN ON. Colocarlos en la cláusula JOIN ON tiene el mismo efecto que colocarlos en la cláusula WHERE para INNER JOINs. Sin embargo, para OUTER JOINs, los predicados lógicos en la cláusula JOIN ON pueden establecer columnas unidas como NULL sin eliminar sus respectivas filas.

14. En el estándar ANSI ISO, ¿qué sucede cuando se compara un NULL con un NULL?

Cuando se compara un NULL con un NULL, el resultado es DESCONOCIDO (UNKNOWN).

15. ¿Qué resultado produce la instrucción SELECT COALESCE(NULL, 1, 2, 3, ‘TRUE’, ‘FALSE’)?

La instrucción produce 1 como resultado.

Estas 15 preguntas cubren una variedad de conceptos de SQL Server y pueden ayudarte a evaluar el conocimiento y experiencia de los candidatos a un trabajo. Sin embargo, es importante recordar que esta prueba es solo un factor en tu decisión de contratación. El currículum, la experiencia previa y las entrevistas en persona también deben influir en tus decisiones de contratación.

Al utilizar esta prueba, puedes identificar rápidamente a desarrolladores y mantenedores de SQL de nivel senior con varios años de experiencia en SQL a tiempo completo. Los candidatos que obtengan una puntuación de 10 o más en esta prueba probablemente tengan las habilidades necesarias para el trabajo. Aquellos que obtengan una puntuación de 5 o menos probablemente sean principiantes en la programación SQL.

Recuerda, el aprendizaje continuo es esencial en la profesión de programación SQL. Incluso los desarrolladores senior pueden no responder todas las preguntas correctamente, lo que eleva el nivel de la prueba en general. Esta prueba sirve como una oportunidad de aprendizaje para los candidatos, permitiéndoles ampliar sus conocimientos y habilidades.

Administrar esta prueba es rápido y fácil, y solo lleva de 10 a 15 minutos. Las preguntas están diseñadas para ser claras y sin ambigüedades, asegurando una evaluación justa e imparcial. La prueba se puede calificar en menos de 5 minutos, lo que la convierte en una herramienta eficiente en el proceso de contratación.

Aunque esta prueba no es un examen sofisticado, puede separar eficazmente a profesionales de SQL de nivel senior de principiantes. Úsala como parte de tu proceso de contratación para asegurarte de contratar al candidato adecuado para tus necesidades comerciales.

¡Esperamos que estas 15 preguntas esenciales para entrevistas de SQL Server te ayuden a encontrar al candidato perfecto para tu desarrollo o rol de soporte de SQL. ¡Buena suerte con tu proceso de contratación!

Click to rate this post!
[Total: 0 Average: 0]

Let's work together

Send us a message or book free introductory meeting with us using button below.