L'instruction qui est préférable? Dépend de ce que vous faites.
Il y a des implications sur les performances? Si la table est un permananent table, vous pouvez créer des index au moment de la création de la table qui a des implications pour la performance à la fois négative et positiviely. Sélectionnez dans ne pas recréer les index qui existent sur les tables et donc de l'utilisation ultérieure de la table peut être plus lente qu'elle ne doit l'être.
Ce qui est un bon cas d'utilisation pour SÉLECTIONNER...EN plus de l'INSÉRER DANS ...? Sélectionnez dans est utilisée si vous ne pouvez pas savoir la structure de la table à l'avance. Il est plus rapide à écrire que créer une table et d'un insert staetment, de sorte qu'il est utilisé pour accélérer la dynamique de croissance à la fois. Il est souvent plus rapide d'utiliser lors de la création d'un rapide table temp de tester des choses ou une table de sauvegarde d'une requête spécifique (peut-être des enregistrements à supprimer). Il doit être rare de voir qu'il est utilisé dans la production de code qui sera exécuté plusieurs fois (sauf pour les tables temporaires), parce qu'il va échouer si la table était déjà dans l'existence.
Il est parfois utilisé à mauvais escient par des personnes qui ne savent pas ce qu'ils font. Et ils peuvent causer des ravages dans la db. Je crois fermement qu'il est inapproprié d'utiliser SELECT INTO pour autre chose qu'un jetable table (une sauvegarde temporaire, d'une table temporaire qui disparaîtra à la fin de la procédure stockée ,etc.). Tables permanentes besoin réel de la pensée comme de leur conception, et SÉLECTIONNEZ DANS le rend facile pour éviter de penser à rien, même le plus élémentaire, comme les colonnes et quels types de données.
En général, je préfère l'utilisation de la table et de l'instruction insert - vous avez plus de contrôle et il est préférable de processus reproductibles. De plus, si la table est une table permanente, il doit être créé à partir d'un autre script de création de table (celle qui est en contrôle de la source) que la création d'objets permanents doivent pas, en général, dans le code que les insertions/suppressions/mises à jour ou sélectionne à partir d'une table. Modifications de l'objet doivent être manipulés séparément des modifications de données, car les objets ont des conséquences qui dépassent les besoins spécifiques d'un insert/update/sélectionner/supprimer. Vous avez besoin de réfléchir à la meilleure des types de données, vous devez penser à la FK contraintes et PKs et d'autres contraintes, vous devez tenir compte des exigences d'audit, vous devez penser à propos de l'indexation, etc.