Mittenchops
Mittenchops

Reputation: 19664

Recreate Wikipedia list of states by GDP with SPARQL query

I am trying to recreate this list:

https://en.wikipedia.org/wiki/List_of_states_and_territories_of_the_United_States_by_GDP

with a Wikidata SPARQL query.

I can find states by population with this query

Additionally, the fields:

are covered by the wikiproject economics, though only at the country level.

That said, seeing the "List of states and territories of the United States by GDP" article makes me think at least P2131 may be available at the state level.

I have tried the following query.

SELECT DISTINCT ?state ?stateLabel ?population ?gdp
{
  ?state wdt:P31 wd:Q35657 ;
         wdt:P1082 ?population ;
         wdt:P2131 ?gdp ;
  SERVICE wikibase:label { bd:serviceParam wikibase:language "en" }
}
GROUP BY ?state ?population ?stateLabel ?gdp
ORDER BY DESC(?population)

And see no matches. What's the right query for this?

(Point in time for a given year would be excellent, like how the table gives me 2019, 2020, etc., but I'll settle for learning the vanilla first.)

Upvotes: 2

Views: 219

Answers (1)

logi-kal
logi-kal

Reputation: 7880

Because of a Wikidata internal convention, I had to upload the GPD data in the items about the States' economies, that are linked through property P8744.

E.g., for the State of Maine you'll find the data in economy of Maine.

This is the correct query for obtaining what you want (test):

SELECT DISTINCT ?state ?stateLabel ?population ?gdp (year(?date) as ?year)
{
  ?state wdt:P31 wd:Q35657 ;
         wdt:P1082 ?population ;
         wdt:P8744/wdt:P2131 ?gdp .
  ?gdpStmt ps:P2131 ?gdp ;
           pq:P585 ?date .
  SERVICE wikibase:label { bd:serviceParam wikibase:language "en" }
}
GROUP BY ?state ?population ?stateLabel ?gdp ?date
ORDER BY DESC(?year) DESC(?population)

It also considers grouping by year.

Upvotes: 2

Related Questions