WITH y AS (
WITH x AS (
SELECT * FROM MyTable
)
SELECT * FROM x
)
SELECT * FROM y
Est-ce que quelque chose comme ça fonctionne? Je l'ai essayé plus tôt mais je n'ai pas pu le faire fonctionner.
sql
sql-server
tsql
nested
common-table-expression
Joe Phillips
la source
la source
Vous pouvez effectuer les opérations suivantes, appelées requêtes récursives:
Vous n'avez peut-être pas besoin de cette fonctionnalité. J'ai fait ce qui suit pour mieux organiser mes requêtes:
la source
Avec ne fonctionne pas intégré, mais cela fonctionne consécutivement
EDIT Correction de la syntaxe ...
Jetez également un œil à l'exemple suivant
DÉMO SQLFiddle
la source
Ces réponses sont plutôt bonnes, mais en ce qui concerne la bonne commande des articles, vous feriez mieux de consulter cet article http://dataeducation.com/dr-output-or-how-i-learned-to-stop -inquiéter-et-aimer-la-fusion
Voici un exemple de sa requête.
la source
J'essayais de mesurer le temps entre les événements à l'exception de ce qu'une entrée qui a plusieurs processus entre le début et la fin. J'en avais besoin dans le contexte d'autres processus monolignes.
J'ai utilisé un select avec une jointure interne comme instruction de sélection dans le Nth cte. Le deuxième cte dont j'avais besoin pour extraire la date de début sur X et la date de fin sur Y et utilisé 1 comme valeur d'identifiant pour la jointure gauche pour les mettre sur une seule ligne.
Fonctionne pour moi, j'espère que cela aide.
.... autres ctes
la source
Nested 'With' n'est pas pris en charge, mais vous pouvez toujours utiliser le second With comme sous-requête, par exemple:
la source
nous pouvons créer un cte imbriqué.Veuillez voir le cte ci-dessous dans l'exemple
la source