66 votes

Des Questions, chaque bonne Base de données/SQL developer devrait être en mesure de répondre

J'ai été en passant par des Questions tout bon .Net développeur doit être capable de répondre et a été très impressionné par le contenu et l'approche de cette question et, donc, dans le même esprit, je me pose cette question depuis la Base de données/SQL Developer.

Quelles sont les questions que pensez-vous d'un bon de bases de données/SQL programmeur être en mesure de répondre?

31voto

marc_s Points 321990

Les différents types de Jointures:

  • INNER JOIN
  • À GAUCHE et à DROITE de la JOINTURE EXTERNE
  • FULL JOIN
  • LA CROIX REJOINDRE

Voir Jeff Atwood l' Explication Visuelle de Jointures

  • Qu'est ce qu'une clé? Un candidat à la clé? Une clé primaire? Une autre clé? Une clé étrangère?
  • Ce n'est qu'un indice et comment il aide votre base de données?

  • Quels sont les types de données disponibles et quand les utiliser?

28voto

OMG Ponies Points 144785

Une réimpression de ma réponse ici, que des lignes directrices générales pour les sujets.

Notions de base


  1. SELECTing colonnes d'une table
  2. Granulats Partie 1: COUNT, SUM, MAX/MIN
  3. Les Agrégats De La Partie 2: DISTINCT, GROUP BY, HAVING

Intermédiaire


  1. JOINs, ANSI-89 et ANSI-92 syntaxe
  2. UNION vs UNION ALL
  3. NULL manipulation: COALESCE & Natif de la gestion des valeurs NULL
  4. Les sous-requêtes: IN, EXISTS, et dans la ligne des vues
  5. Les Sous-Requêtes: Corrélation
  6. WITH syntaxe: une sous-Requête d'Affacturage/CCE
  7. Vues

Sujets Avancés


  • Des Fonctions, Des Procédures Stockées, Des Paquets
  • Pivotement de données: CAS & PIVOT de la syntaxe
  • Des Requêtes Hiérarchiques
  • Curseurs: Implicite et Explicite
  • Les déclencheurs
  • SQL dynamique
  • Les Vues Matérialisées
  • L'Optimisation De La Requête: Index
  • L'Optimisation De La Requête: Expliquer Les Plans De
  • L'Optimisation De La Requête: Profilage
  • Données de la Modélisation: les Formes Normales, de 1 à 3
  • Données De La Modélisation: Les Primaires Et Les Clés Étrangères
  • Données De La Modélisation: Les Contraintes De Table
  • Données De La Modélisation: Lien/Corrollary Tables
  • La Recherche Plein Texte
  • XML
  • Les Niveaux D'Isolation
  • Les Diagrammes entité-Relation (ERDs), Logique et Physique
  • Transactions: COMMIT, ROLLBACK, Erreur De Manipulation

12voto

Phil Sandler Points 12937

Voici quelques-unes:

  • Qu'est-ce que la normalisation et pourquoi est-il - il important?
  • Quelles sont les situations où vous serait de normaliser les données?
  • Qu'est ce qu'une transaction et pourquoi est-il - il important?
  • Qu'est-ce que l'intégrité référentielle et pourquoi est-il important?
  • Quelles mesures à prendre pour d'enquêter sur les rapports de la lenteur de la base de données la performance?

8voto

DyingCactus Points 15843

Qu'est-ce que l'injection sql et comment peut-on la prévenir?

Qu'est ce qu'un curseur et quand vous l'utiliser (ou pas) et pourquoi?

8voto

Craig Young Points 5570

J'ai mis cette réponse parce que Erwin Smout posté une réponse qui a été si mal il a souligné qu'il est probablement la nécessité de s'en garder.

Erwin a suggéré:

"Pourquoi à chaque SÉLECTIONNEZ toujours différents ?"

Une façon plus appropriée la question serait: Si quelqu'un venait à prétendre que: "chaque SÉLECTIONNEZ toujours différents"; comment voulez-vous des commentaires sur la demande?

Si un candidat est incapable de tirer la demande descendu en flammes-ils:

  • Ne comprends pas le problème avec la demande.
  • Le manque de pensée critique.
  • Le manque de capacité à communiquer des problèmes techniques.

Pour l'enregistrement

  1. Supposons que votre requête est correcte, et ne renvoie pas les doublons, puis y compris DISTINCTS simplement les forces de l'SGBDR pour vérifier votre résultat (zéro avantage, et beaucoup de traitement supplémentaire).
  2. Supposons que votre requête est incorrecte, et de ne revenir les doublons, puis y compris DISTINCTS simplement se cache le problème (encore une fois avec un traitement supplémentaire). Il serait préférable de repérer le problème et de le résoudre votre requête... ça va fonctionner plus rapidement de cette façon.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X