MySQL-表查询内部连接到自身
考虑上面的查询结果 是否有一种方法可以联接表本身以获得以下结果:-MySQL-表查询内部连接到自身,mysql,Mysql,考虑上面的查询结果 是否有一种方法可以联接表本身以获得以下结果:- POH_ID | JOH_ID | ............. ------------------------------------------- NULL | JOH_00000002 | ............. POH_00000002 | JOH_00000001 | ............. POH_00000001 | JOH_00000001 | ..........
POH_ID | JOH_ID | .............
-------------------------------------------
NULL | JOH_00000002 | .............
POH_00000002 | JOH_00000001 | .............
POH_00000001 | JOH_00000001 | .............
也就是说,如果只有一个JOH_ID,我检索特定的行,如果有多个相同的JOH_ID,我检索具有POH_ID的行
照片中的结果是查询的结果您可以找到具有相同joh_id的行数,将其与主表连接以过滤每个joh_id只有一行或非空poh_id的行
select t.*
from your_table t
join (
select joh_id, count(*) as cnt
from your_table
group by joh_id
) t2 on t.joh_id = t2.joh_id
where t2.cnt = 1 or t.poh_id is not null;