Я предполагаю, что патент можно цитировать после того, как его статус - «Заявка» - поэтому вместо использования начального номера CN-201510747352
- вы должны использовать номер приложения / паба, когда статус «Приложение». Также вам нужно применять не только отдельный подсчет, но иисключая подсчет одного и того же приложения с суффиксом -A, -B или т. д., поэтому вы увидите использование функции regex_extract
#standardSQL
SELECT
c.publication_number AS Pub,
COUNT(DISTINCT REGEXP_EXTRACT(p.publication_number, r'(.+-.+)-')) AS CitedByCount
FROM `patents-public-data.patents.publications` AS p,
UNNEST(citation) AS c
WHERE c.publication_number LIKE ('CN-105233911%')
GROUP BY c.publication_number
с результатом
Row Pub CitedBy
1 CN-105233911-A 10
... Если у меня есть только данные приложения, как я могу это реализовать?
#standardSQL
SELECT
c.publication_number AS Pub,
COUNT(DISTINCT REGEXP_EXTRACT(p.publication_number, r'(.+-.+)-')) AS CitedByCount
FROM `patents-public-data.patents.publications` AS p,
UNNEST(citation) AS c
WHERE c.publication_number IN (
SELECT publication_number
FROM `patents-public-data.patents.publications`
WHERE application_number IN ('CN-201510747352-A')
)
GROUP BY c.publication_number