22. Incoming citations for a single publication, by journal
Level: Medium
This query requires basic knowledge of SQL and the Dimensions data model
Description
This query counts incoming citations for a single publication.
Results are grouped by journal, and include the publisher of each journal in the list.
The publications
table has a citations
field that includes the publication IDs of all incoming citations for a given paper. We fetch that list in the citing
subquery below, then query the publications
table for information about all the IDs in that list.
The COALESCE
function is used here to minimize the number of null fields in the final results—if an incoming citation is published in a book rather than a journal, for example, then the journal.title
field will be NULL
, and the boook_title.preferred
field is likely to have the value we want. Occasionally, the publisher
field is unavailable, so we use COALESCE(p.publisher.name, "(unknown)")
to make sure there aren't any blank fields.
Note
The list of citing publications is determined by the clause WHERE p.id='pub.1113640622'
. This can be changed to be as broad or narrow as you wish—changing it to something like WHERE journal.title='eLife'
, for example, would return incoming citations to an entire journal rather than a single paper.
Query
WITH citing AS (
SELECT citing_pubs.id
FROM `dimensions-ai.data_analytics.publications` p
CROSS JOIN UNNEST(citations) AS citing_pubs
WHERE p.id='pub.1113640622' -- publication of interest here
)
SELECT
COALESCE(
p.journal.title,
CONCAT(p.book_title.preferred, ' (book)'),
p.proceedings_title.preferred,
CONCAT(p.title.preferred, ' (book)') -- some books have this field instead of book_title
) AS journal,
COALESCE(p.publisher.name, "(unknown)") AS publisher,
p.type AS pubtype, COUNT(p.id) AS citations
FROM `dimensions-ai.data_analytics.publications` p
WHERE p.id IN (SELECT id FROM citing)
GROUP BY 1,2,3
ORDER BY 4 DESC
Results
[
{
"journal": "bioRxiv",
"publisher": "Cold Spring Harbor Laboratory",
"pubtype": "preprint",
"citations": "15"
},
{
"journal": "PLOS Biology",
"publisher": "Public Library of Science (PLoS)",
"pubtype": "article",
"citations": "5"
},
{
"journal": "eLife",
"publisher": "eLife",
"pubtype": "article",
"citations": "3"
},
{
"journal": "medRxiv",
"publisher": "Cold Spring Harbor Laboratory",
"pubtype": "preprint",
"citations": "3"
},
{
"journal": "Scientometrics",
"publisher": "Springer Nature",
"pubtype": "article",
"citations": "3"
},
// more entries here...
]