SQL中的复杂查询。对于每个子集,只保留大于树型的行

SQL中的复杂查询。对于每个子集,只保留大于树型的行,sql,Sql,我必须用SQL进行复杂的查询。 只有在员工的工资高于老板的情况下,才有必要进行争吵 表格结构为: |姓名|工资|员工|身份证|老板|身份证| 如果您有任何想法,将不胜感激。您可以使用相关子查询: select t.* from t where t.salary > (select tb.salary from t tb where tb.employee_id = t.boss_id

我必须用SQL进行复杂的查询。 只有在员工的工资高于老板的情况下,才有必要进行争吵

表格结构为:

|姓名|工资|员工|身份证|老板|身份证|


如果您有任何想法,将不胜感激。

您可以使用相关子查询:

select t.*
from t
where t.salary > (select tb.salary
                  from t tb
                  where tb.employee_id = t.boss_id
                 );
这不是一个复杂的查询。其实很简单

如果
t
确实是一个复杂的查询,则可以使用CTE,以便只定义一次:

with t as (
      <your query here>
     )
. . .;
带t作为(
)
. . .;

非常欢迎示例数据和所需输出。我删除了不一致的数据库标记。请仅标记您真正使用的数据库。您的问题是什么?你什么都没问。你说你的尝试没有成功?那个些尝试是什么?这个问题并没有显示出任何研究成果:(非常感谢。我是SQL新手,这就是为什么这个问题听起来不像应该的那个样清晰