2009-04-19 21 views
18

La búsqueda de Google encuentra algunos enlaces a las preguntas de tsql. Me preguntaba qué preguntarían los expertos en SO en una entrevista para TSQL.preguntas de la entrevista de TSQL que hace

+0

Depende de a quién estés entrevistando: un DBA, un desarrollador, arquitecto, etc. ¿Puedes aclarar la pregunta, por favor? – allgeek

+0

¿Esto realmente está relacionado con la programación? ¿Dónde están los facistas de la "pregunta cercana"? –

+4

@Mark: esta es una pregunta similar a la de "entrevista", como dónde ha obtenido 117 votos de http://stackoverflow.com/questions/205003/is-it-wrong-to-go-to-interviews-while-employed/ 205011 # 205011 - Así que digo, está relacionado con la programación. – Sung

Respuesta

16

Estas son algunas de las preguntas más comunes que me han preguntado como desarrollador ASP.Net con fuertes habilidades de SQL Server:

  • nombrar y describir los diferentes tipos de combinaciones
  • Lo que es COALESCE?
  • Explicar claves primarias y extranjeras
  • ¿Qué harías para optimizar las consultas de ejecución lenta?
  • ¿Cuál es la diferencia entre DELETE y TRUNCATE?
+0

+1 Este es un buen paso para filtrar a aquellos que no tienen ni idea. ¿Qué hay de distinguir entre los candidatos finales avanzados? –

+0

Bien, Joel, casi nunca recibo preguntas sobre ninguna de las funciones más nuevas en SQL Server 2005, como RANK, PIVOT, ROW_NUMBER, APPLY, CHECKSUM, usando la conexión de administrador dedicada, usando CTE, escribiendo material de CLR. – DOK

+2

Y, si está buscando a alguien que mantenga sus habilidades al día, pregúntele qué características nuevas de SQL Server 2008 está deseando utilizar y si ha descargado y experimentado con las versiones beta. – DOK

2

En la sección de consulta SQL (para ampliar la DOK):

  • ¿Cómo manejaría NULL problemas? (Es decir NULL -.? 25 =)
  • Variaciones para CASE en SELECCIONAR s (pros/contras)
  • función de usuario vs. almacenado rendimiento procedimiento
  • .NET integración/SQL (pros/contras)
  • ¿Cómo y por qué encadenar consultas SQL? (A través de dios-consulta, vista, procedimientos almacenados, etc)
+0

¿Qué quiere decir encadenando consultas SQL? –

+0

¿Cuál es la respuesta a la pregunta sobre la función del usuario v.s. ¿rendimiento del procedimiento almacenado? – Andomar

+0

@John: en nuestras aplicaciones basadas en SQL2k, siempre hay problemas para crear consultas comprobables y compuestas.Si necesitamos un informe lo dividimos en pasos y cadenas discretos como View1-> View2-> View3-> Sp1. Con esta arquitectura, podemos controlar nuestro flujo de datos en profundidad, no como en una consulta T-SQL lonq de 2000 líneas. – boj

0

Siempre pido programadores (los programadores no realmente dB, pero los programadores que shoud ser capaz de escribir un DAL)

"Epxlain la diferencia entre una subconsulta que está correlacionada y que no es "

Sé para las personas que saben algo o 2 acerca de sql esto suena muy fácil, pero para mi sorpresa, mucho menos del 50% lo hace bien.

+0

¿Está buscando algo más que el hecho de que una subconsulta correlacionada utiliza los resultados de la consulta externa y se ejecuta repetidamente, o es eso? –

+0

nono, eso es todo! ¡Más información solo fue requerida después de que pudieran decirme qué era en primer lugar! Incluso terminamos contratando, entonces, ¿quién falló esta pregunta real ... Problemas para encontrar personas de TI en Bélgica = -) Pero aún así no es tan malo como una historia que escuché de otra cosa: buscar un experto de DB2, un candidato, con 10 años de experiencia como afirmó, no sabía lo que era un procedimiento almacenado. – Peter

+1

Me gusta mucho el chocolate belga. Vendré a trabajar para ti. He oído hablar de procedimientos almacenados una o dos veces. –

1

Aquí hay algunas preguntas que puedo hacer.

  • cómo implementar ROW_NUMBER sin utilizar Row_Number() función.
  • Cómo calcular el total acumulado
  • Cómo transportar registros - pivotar.
  • registros
  • Filtrado NULL en WHERE cláusula
  • condicional ordenamiento registro y filtrado
5

Hay un montón de preguntas aquí: SQL Server Quiz, Can You Answer All These?

algo grande, por supuesto, ¿cómo se puede código para minimizar los puntos muertos

Tome el siguiente código, por ejemplo, el 80% de las personas se equivocan

¿Qué será t el resultado de lo siguiente?

SELECT 3/2 
+3

Para los lectores que no tienen acceso a SQL Server, SELECT 3/2 devuelve 1. No 1.5. – DOK

+0

Ese es uno de esos "Doh!" momentos cuando piensas en los tipos inferidos. Para aquellos mismos lectores que carecen de SQL Server, puede obtener la respuesta esperada si selecciona SELECT 3.0/2.0 para que no se infiera que desea un número entero. El equivalente de Oracle sería seleccionar 3/2 de dual y devuelve 1.5 Debe ... luchar ... instar a ... instalar MySQL y PostgreSQL para probar ... – jeffa00

1

Nombre del TRANSACCIÓN AISLAMIENTO DE NIVEL de explicar cada uno de ellos, que es el valor por defecto ?

+0

yay, porque deberíamos todos estar haciendo más transacciones! –

+1

solo para agregar a eso, qué es lectura fantasma, lectura sucia, lectura repetible, actualización perdida y qué niveles de aislamiento pueden ayudar – SQLMenace

2

Una lista parcial de sugerencias:

  • obtener el SQL más terrible que haya ejecutado a través y llegar a los candidatos para explicar tantas cosas mal con él, ya que pueden

  • preguntarles cómo obtendrían el plan de consulta para el tsql que escriben y cuáles son algunas de las cosas que deben evitarse en los planes de consulta (y cómo los rectificarían si aparecieran); ver si saben lo que es una tabla completa o recorrido de índice es

  • les preguntas si entienden cómo funciona el optimizador del servidor y la forma en que podría haber teniendo en la tsql escriben

  • les pido un ejemplos de cuando es bueno usar tempdb

  • ver si saben qué cláusulas sql forzarán el uso de tempdb entre bastidores; ver si saben qué esto es importante

  • pedirles ejemplos de cuando es mejor no utilizar un cursor

  • les preguntas cómo asegurar actualizaciones en su lugar; Pregunta a los que los vendedores apoyar eso y que implementan cambios como eliminar/insertar

  • se les explique por qué es una mala práctica de usar select * en el código

0

¿Cuál es la diferencia entre una cláusula WHERE y HAVING ¿cláusula?

Es una pregunta aparentemente fácil que muchas personas se equivocan, y escucharlas tratar de responder le dará una idea de su comprensión de la agrupación.

Cuestiones relacionadas