Considérez la requête suivante qui insère des lignes d'une table source uniquement si elles ne sont pas déjà dans la table cible: INSERT INTO dbo.HALLOWEEN_IS_COMING_EARLY_THIS_YEAR WITH (TABLOCK) SELECT maybe_new_rows.ID FROM dbo.A_HEAP_OF_MOSTLY_NEW_ROWS maybe_new_rows WHERE NOT EXISTS ( SELECT 1 FROM dbo.HALLOWEEN_IS_COMING_EARLY_THIS_YEAR halloween WHERE maybe_new_rows.ID = halloween.ID ) OPTION (MAXDOP 1, QUERYTRACEON …
J'ai eu un débat en cours avec divers développeurs dans mon bureau sur le coût d'un indice, et si oui ou non l'unicité est bénéfique ou coûteuse (probablement les deux). Le nœud du problème réside dans nos ressources concurrentes. Contexte J'ai déjà lu une discussion qui a déclaré qu'un Uniqueindex …
Lorsque la fonction FILESTREAM est activée sur Microsoft SQL Server 2012, SQL Server crée un partage «masqué» sur le système. La part est définie comme suit: Sharename FILESTREAM_SHARE Path \\?\GLOBALROOT\Device\RsFx0320\<localmachine>\FILESTREAM_SHARE Remark SQL Server FILESTREAM share Maximum users unlimited Users Caching Manual caching of documents Permissions NT-AUTHORITY\Authenticated Users, FULL Le nom …
En SQL, pour autant que je sache, l'ordre de traitement des requêtes logiques, qui est l'ordre d'interprétation conceptuelle, commence par FROM de la manière suivante: DE OÙ PAR GROUPE AYANT SÉLECTIONNER COMMANDÉ PAR Après cette liste, il est facile de comprendre pourquoi vous ne pouvez pas avoir d'alias SELECT dans …
J'essaie de mieux comprendre comment le moteur d'exécution de SQL Server se comporte dans un état de faible mémoire. En termes de subventions à la mémoire, je me demande s'il existe un moyen de forcer GrantedMemoryà être égal à RequiredMemory. (Je suppose qu'il y a un indicateur de trace non …
Pourquoi est-il légal de transmettre un nom d'objet à la procédure stockée système sp_helptext? Quel mécanisme convertit le nom de l'objet en chaîne? par exemple -- works sp_helptext myproc sp_helptext [myproc] sp_helptext [dbo.myproc] -- and behaves the same as a string sp_helptext 'myproc' sp_helptext 'dbo.myproc' -- does not work sp_helptext …
Dans SQL Server 2008 R2, en quoi ces deux restaurations sont-elles différentes: Exécutez une ALTERinstruction, pendant quelques minutes, puis appuyez sur «Annuler l'exécution». La restauration complète prend quelques minutes. Exécutez la même ALTERinstruction, mais assurez-vous que le LDFfichier n'est pas assez volumineux pour qu'il se termine correctement. Une fois que …
Je continue à lire dans de nombreux forums et sur de nombreux blogs qu'une page est composée comme indiqué ci-dessous: Taille de la page: 16 x 512B = 8192B En-tête de page: = 96B Ligne In_Row maximale: = 8060B Cela laisse (8192 - 96 - 8060) B = 36B. Ok, …
L'exemple de code dans cet élément de connexion Affiche un bug où SELECT COUNT(*) FROM dbo.my_splitter_1('2') L1 INNER JOIN dbo.my_splitter_1('') L2 ON L1.csv_item = L2.csv_item Renvoie les résultats corrects. Mais ce qui suit renvoie des résultats incorrects (en 2014 en utilisant le nouvel estimateur de cardinalité) SELECT (SELECT COUNT(*) FROM …
Consultez cette requête. C'est assez simple (voir la fin de l'article pour les définitions de table et d'index, et un script de repro): SELECT MAX(Revision) FROM dbo.TheOneders WHERE Id = 1 AND 1 = (SELECT 1); Remarque: le "AND 1 = (SELECT 1) est juste pour empêcher cette requête d'être …
J'espère que quelqu'un pourra m'orienter dans la bonne direction sur celui-ci. Voici mes travaux jusqu'à présent. SELECT * FROM sys.identity_columnsest une vue système qui donne "last_value" mais la définition de cette vue utilise une fonction interne IdentityProperty(colName, 'LastValue')- c'est donc une impasse (ne pas la tirer d'une table système là-bas). …
Dans SQL standard, le résultat d'un union alln'est pas garanti dans n'importe quel ordre. Donc, quelque chose comme: select 'A' as c union all select 'B' Pourrait retourner deux lignes dans n'importe quel ordre (bien que, dans la pratique sur n'importe quelle base de données que je connaisse, «A» précédera …
J'essaie d'obtenir une liste de pages pour une table qui a des lignes avec ROW_OVERFLOW_DATA. Je peux obtenir la liste des pages allouées à partir du DMV non documenté sys.db_db_database_page_allocations, cependant, il ne semble pas y avoir de pages ROW_OVERFLOW_DATA répertoriées dans la sortie de ce DMV. Y a-t-il un …
À titre d'exemple simplifié, supposons que j'ai un tableau comme celui-ci: seq | value ----+------ 102 | 11954 211 | 43292 278 | 19222 499 | 3843 La table peut contenir des centaines de millions d'enregistrements, et je dois fréquemment effectuer des requêtes comme celle-ci: SELECT sum(value) WHERE seq > …
Dans le blog de Craig Freedman, Nested Loops Join , il explique pourquoi la jointure de boucles imbriquées ne peut pas prendre en charge une jointure externe droite: Le problème est que nous analysons la table interne plusieurs fois - une fois pour chaque ligne de la jointure externe. Nous …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.