Quelle est la différence entre une expression de table commune (CTE) et une table temporaire? Et quand devrais-je utiliser l'un sur l'autre? CTE WITH cte (Column1, Column2, Column3) AS ( SELECT Column1, Column2, Column3 FROM SomeTable ) SELECT * FROM cte Table temporaire SELECT Column1, Column2, Column3 INTO #tmpTable FROM …
Cette question a été migrée à partir de Stack Overflow car il est possible d'y répondre sur Database Administrators Stack Exchange. Migré il y a 7 ans . De msdn : Contrairement à une table dérivée, un CTE peut être auto-référencé et peut être référencé plusieurs fois dans la même …
Venant à SQL à partir d'autres langages de programmation, la structure d'une requête récursive semble plutôt étrange. Parcourez-le étape par étape, et il semble s'effondrer. Prenons l'exemple simple suivant: CREATE TABLE #NUMS (N BIGINT); INSERT INTO #NUMS VALUES (3), (5), (7); WITH R AS ( SELECT N FROM #NUMS UNION …
Normalement, je crée des guides de plan en construisant d'abord une requête qui utilise le plan correct, et en le copiant dans la requête similaire qui ne fonctionne pas. Cependant, cela est parfois délicat, surtout si la requête n'est pas exactement la même. Quelle est la bonne façon de créer …
Voici un arbre d'assemblage que je souhaite rechercher à l'aide d'une T-SQLrequête récursive (probablement CTE) avec les résultats attendus ci-dessous. Je veux connaître le montant total par assemblage pour chaque pièce. Ce qui signifie que si je recherche «Rivet», je veux connaître le nombre total à chaque niveau de l'assemblage, …
Existe-t-il un moyen d'exécuter plusieurs opérations à l'aide de l' WITHinstruction? Quelque chose comme WITH T AS ( SELECT * FROM Tbl ) BEGIN OPEN P_OUTCURSOR FOR SELECT * FROM T; SELECT COUNT(*) INTO P_OUTCOUNT FROM T; END; Je veux sélectionner des données et leur nombre ...
J'ai besoin de calculer la profondeur d'un descendant de son ancêtre. Lorsqu'un enregistrement a object_id = parent_id = ancestor_id, il est considéré comme un nœud racine (l'ancêtre). J'ai essayé de lancer une WITH RECURSIVErequête avec PostgreSQL 9.4 . Je ne contrôle pas les données ou les colonnes. Le schéma de …
Mettre à jour ci-dessous J'ai un tableau de comptes avec une architecture de compte acct / parent typique pour représenter une hiérarchie de comptes (SQL Server 2012). J'ai créé une VUE en utilisant un CTE pour hacher la hiérarchie, et dans l'ensemble cela fonctionne à merveille et comme prévu. Je …
Espérant simplement confirmer mon observation et obtenir une explication de la raison pour laquelle cela se produit. J'ai une fonction définie comme: CREATE OR REPLACE FUNCTION "public"."__post_users_id_coin" ("coins" integer, "userid" integer) RETURNS TABLE (id integer) AS ' UPDATE users SET coin = coin + coins WHERE userid = users.id RETURNING …
Je regardais juste un article sur StackOverflow où Aaron Bertrand propose d'utiliser un CTE au lieu d'une table de nombres, ce qui est une manière élégante d'effectuer la tâche à accomplir. Ma question est la suivante: pourquoi la première ligne du CTE commence-t-elle par un point-virgule? ;WITH n AS (SELECT …
Dans PostgreSQL 9.5, étant donné une table simple créée avec: create table tbl ( id serial primary key, val integer ); J'exécute SQL pour INSÉRER une valeur, puis MISE À JOUR dans la même instruction: WITH newval AS ( INSERT INTO tbl(val) VALUES (1) RETURNING id ) UPDATE tbl SET …
Nous avons une base de données SQL Server qui a une spécification d'audit de base de données qui vérifie toutes les actions d'exécution sur la base de données. CREATE DATABASE AUDIT SPECIFICATION [dbAudit] FOR SERVER AUDIT [servAudit] ADD (EXECUTE ON DATABASE::[DatabaseName] BY [public]) Nous avons constaté que certaines requêtes écriront …
Supposons que vous ayez des nodestables comme celle-ci: CREATE TABLE nodes ( node serial PRIMARY KEY, parent integer NULL REFERENCES nodes(node), ts timestamp NOT NULL DEFAULT now() ); Il représente une structure arborescente de type nœud standard avec des nœuds racine en haut et plusieurs nœuds enfants qui pendent des …
En discutant d'une solution CTE récursive pour cette question: Obtenez les 5 dernières valeurs distinctes pour chaque ID @ypercube est tombé sur une exception surprenante, ce qui nous a amenés à étudier la gestion des modificateurs de type. Nous avons trouvé un comportement surprenant. 1. La conversion de type conserve …
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.