哪个元素按秒出现频率最高table
Which element is the most frecuent according to a second table
我有两个表,
phenotipos
id
GTEX-1117F
GTEX-ZE9C
K-562
和
atributos
SAMPID
K-562-SM-26GMQ
K-562-SM-2AXTU
GTEX-1117F-0003-SM-58Q7G
GTEX-ZE9C-0006-SM-4WKG2
GTEX-ZE9C-0008-SM-4E3K6
GTEX-ZE9C-0011-R11a-SM-4WKGG
我需要知道 fenotipos
中的每个元素出现在 atributos
中的次数
我试图离开连接,但它不起作用,因为 id
与 de SAMPID
不相同,并且因为 id
每次我都没有相同数量的字符可以 trim SAMPID
和 (distinct left (SAMPID,x)
您可以使用相关子查询字符串函数来计算每个表型以开头的属性数量:
select p.*,
(select count(*) from atributos a where a.sampid like concat(p.id, '%')) as cnt
from phenotipos p
您可以加入 like
条件,然后按 id 和计数分组:
SELECT p.id, COUNT(*)
FROM phenotipos p
JOIN atributos a ON a.sampid LIKE CONCAT(p.id, '%')
GROUP BY p.id
尝试使您的左连接条件 SAMPID rlike id:
SELECT p.id, sum(a.SAMPID is not null)
FROM phenotipos p
LEFT JOIN atributos a ON a.SAMPID rlike p.id
GROUP BY p.id
这样做的好处是给 id 计数为 0,而且无论 SAMPID id 位于何处,它都有效。
我有两个表,
phenotipos
id
GTEX-1117F
GTEX-ZE9C
K-562
和
atributos
SAMPID
K-562-SM-26GMQ
K-562-SM-2AXTU
GTEX-1117F-0003-SM-58Q7G
GTEX-ZE9C-0006-SM-4WKG2
GTEX-ZE9C-0008-SM-4E3K6
GTEX-ZE9C-0011-R11a-SM-4WKGG
我需要知道 fenotipos
中的每个元素出现在 atributos
中的次数
我试图离开连接,但它不起作用,因为 id
与 de SAMPID
不相同,并且因为 id
每次我都没有相同数量的字符可以 trim SAMPID
和 (distinct left (SAMPID,x)
您可以使用相关子查询字符串函数来计算每个表型以开头的属性数量:
select p.*,
(select count(*) from atributos a where a.sampid like concat(p.id, '%')) as cnt
from phenotipos p
您可以加入 like
条件,然后按 id 和计数分组:
SELECT p.id, COUNT(*)
FROM phenotipos p
JOIN atributos a ON a.sampid LIKE CONCAT(p.id, '%')
GROUP BY p.id
尝试使您的左连接条件 SAMPID rlike id:
SELECT p.id, sum(a.SAMPID is not null)
FROM phenotipos p
LEFT JOIN atributos a ON a.SAMPID rlike p.id
GROUP BY p.id
这样做的好处是给 id 计数为 0,而且无论 SAMPID id 位于何处,它都有效。