Reputation: 11
I have this code in python querying an existing database:
count = db.execute("SELECT COUNT (player_id) FROM players WHERE user_id
= :id", id = session["user_id"])
for player in range(count):
db.execute("INSERT INTO live_players (player_id) VALUES (:filler)",
filler = 0)
However, it doesn't run because 'count' isn't an int. I want SELECT COUNT to return 2, but instead it returns '[{'COUNT (player_id)': 2}]'. How could I remedy this?
Upvotes: 1
Views: 862
Reputation: 211590
You're getting back a result dictionary. Simply access it. To make this access easier, give it an alias:
SELECT COUNT(player_id) AS player_count ...
Then:
for player in range(count["player_count"]):
...
Upvotes: 1