Tsql T-SQL,SQL Server Compact Edition,用于选择的别名

Tsql T-SQL,SQL Server Compact Edition,用于选择的别名,tsql,select,sql-server-ce,alias,Tsql,Select,Sql Server Ce,Alias,如何优化我的SQL代码 我想添加别名 我使用的是SQL Server Compact Edition (…)是一个SELECT查询 SELECT * FROM ( ... ) WHERE id IN ( SELECT id FROM ( ... ) GROUP BY id HAVING COUNT( * ) > 1 ) 我

如何优化我的SQL代码

我想添加别名

我使用的是SQL Server Compact Edition

(…)是一个
SELECT
查询

SELECT
    *
FROM ( ... )
WHERE
    id IN
    (
        SELECT
            id
        FROM ( ... )
        GROUP BY
            id
        HAVING
            COUNT( * ) > 1
    )

我建议只使用该查询一次。您可以创建该查询的CTE,然后按如下方式编写查询:

with cte
As
(....)
Select * 
    from cte 
    where id in 
        (select id from cte 
            group by id 
            having count(*) > 1)

希望有帮助这是另一个选择:

SELECT * FROM
(SELECT *, COUNT(*) OVER(PARTITION BY id) ids FROM (...)) x
WHERE ids>1
(…)中的两个查询是否相同?