sql >> Databáze >  >> RDS >> Sqlserver

Mohu použít více s?

Zkuste:

With DependencedIncidents AS
(
    SELECT INC.[RecTime],INC.[SQL] AS [str] FROM
    (
        SELECT A.[RecTime] As [RecTime],X.[SQL] As [SQL] FROM [EventView] AS A 
        CROSS JOIN [Incident] AS X
            WHERE
                patindex('%' + A.[Col] + '%', X.[SQL]) > 0
    ) AS INC
),
lalala AS
(
    SELECT INC.[RecTime],INC.[SQL] AS [str] FROM
    (
        SELECT A.[RecTime] As [RecTime],X.[SQL] As [SQL] FROM [EventView] AS A 
        CROSS JOIN [Incident] AS X
            WHERE
                patindex('%' + A.[Col] + '%', X.[SQL]) > 0
    ) AS INC
)

A ano, můžete odkazovat na společný tabulkový výraz v definici běžného tabulkového výrazu. Dokonce i rekurzivně. Což vede k několika velmi úhledným trikům .



  1. 4 způsoby, jak získat historii úloh SQL Server

  2. Dotaz aktivních záznamů Codeigniter trvá příliš dlouho, než načte data z databáze

  3. Načíst pevný počet řádků v dotazu SQL v Oracle

  4. Seskupit podle zadaného sloupce v PostgreSQL