Mysql 如何使用子查询过滤两次?

Mysql 如何使用子查询过滤两次?,mysql,sql,sql-server,sql-server-2012,Mysql,Sql,Sql Server,Sql Server 2012,我试图选择约束相互矛盾的数据。例如,当项目编号不为空时,有些数据集的状态描述为“90-失去机会”。我想对它进行两次筛选,因此首先我将所有的Sproject_number设置为null,然后我可以再次筛选此查询,以获得一个状态为“90 Lost Opportunity”的表 SELECT ProjectNumber, PName FROM ( SELECT DISTINCT T0.project_number_ext AS ProjectNumber,

我试图选择约束相互矛盾的数据。例如,当项目编号不为空时,有些数据集的状态描述为“90-失去机会”。我想对它进行两次筛选,因此首先我将所有的Sproject_number设置为null,然后我可以再次筛选此查询,以获得一个状态为“90 Lost Opportunity”的表

SELECT ProjectNumber,
       PName
FROM
(
    SELECT DISTINCT
           T0.project_number_ext AS ProjectNumber,
           T0.project_key AS PKey,
           T0.sproject_number AS sPNumber,
           T0.project_number AS PNumber,
           T0.schedule_finish AS SFinish,
           T0.status_desc AS SDesc,
           T0.Project_name AS PName
    FROM trimergo.rpt_getProjectPOC T0
    WHERE T0.sproject_number IS NULL
)
GROUP BY ProjectNumber,
         PName;

我想你只需要这个。不需要子查询

SELECT 
        DISTINCT 
         T0.project_number_ext as ProjectNumber
        ,T0.status_desc as SDesc
        ,T0.Project_name as PName
    From trimergo.rpt_getProjectPOC T0
    WHERE T0.sproject_number IS NULL AND 
    ( T1.SDesc LIKE '10 - In Proposal%' OR T1.SDesc like '90-Lost Opportunity%' )

这段代码有效,我试图选择约束相互矛盾的数据。例如,当项目编号不为空时,有些数据集的状态描述为“90-失去机会”。我想对它进行两次过滤,所以首先获取所有空数据集,然后过滤该查询以接近所需的数据集

SELECT
T1.ProjectNumber , T1.PName, T1.SDesc

FROM
( 

SELECT DISTINCT 
 T0.project_number_ext as ProjectNumber
,T0.project_key as PKey
,T0.sproject_number as sPNumber 
,T0.project_number as PNumber
,T0.schedule_finish as SFinish
,T0.status_desc as SDesc
,T0.Project_name as PName

From trimergo.rpt_getProjectPOC T0

WHERE T0.sproject_number IS NULL ) AS T1

Where T1.SDesc LIKE '10 - In Proposal%'
OR T1.SDesc like '90-Lost Opportunity%'

Group by ProjectNumber, PName, SDesc

您需要为子查询提供一个别名:其中T.sproject_number为NULL,表示为T..........不工作不是问题描述。为什么让我们猜测?您使用的是MySQL还是MS SQL Server?子查询的目的是什么?欢迎使用stackoverflow。请阅读并使用正确的代码格式化错误消息。另外,在询问SQL问题时,最好以DDL+DML create table+insert into语句和所需结果的形式提供示例数据。您好,感谢您的反馈。我更新了我的问题,请看下面我提供的答案。谢谢你不需要子查询,你可以像上面那样做。我已经为你更新了答案。您可以轻松地添加2个或更多类似于上述的条件。谢谢Hanks Pawan,这对我有用!